Software apps and online services

Hand tools and fabrication machines

Story

This is by far the most ambitious project that I have attempted so far.

Basic Data & Control Flow

When I discovered that my iRobot was damaged from rain I opened it up and cleaned the corrosion out of it and managed to repair the charging part of the board and then left it intact.

I metered out the motors and found out where the positive and negative parts of the drive motors were. Then I soldered wires onto the posts and the positive and negative of the battery.

Going to the drawing board and designing a shield to mount to the top of the iRobot Body. The Particle is powered from the iRobot so power is not an issue.,. The main problem is designing a forward and reverse into the shield as the (negative and positive ) need to be reversed for the motors to go backwards and it is also how the machine will steer. The design schematics are attached.

The project will be in multiple steps.

1. iRobot Motor Control and Programming

a. Board Design and Soldering

b. Particle Programming and Node Red

2. Programming with AdaCore for AutomationControl

a. Integration with Particle for Machine Learning

b. Programming with AdacoreforMachine Learning

c. Program Running

3.Video

Now the Project

iRobot guts with wires soldered on

basic schematic Of the Control Circuit for 1 Wheel

To reverse a DC motors direction you need to reverse the negative and the positive of the motor at he same time. And you need to break before you make the connection to prevent short circuits and big sparks.

As you can see by the above diagram D1 and D3 aren’t required as the activation circuit is separate from the control circuit and NPN transistors isolate the contactors from the controller.

1a. Board Design and Soldering

I am using 2 relays each for driving the forward reverse of each wheel (The relays I have are only single NO and NC with commons) and another relay as a activation relay which will be SW2 which drives the brush and starts the motors. The diodes and capacitors in the circuit prevent sparks of the brushes in the motors and shorts.

The Relay Board

Completed board

Board without copper top layer to see the routing

To finalize the board I added a +5VDC USB out to charge the Electron's batteries on the joystick board.

I am using the example from the particle documentation regarding publish and subscribe as well as particle function on the Sensor Board.