Raspberry Pi B+
Functional Requirements:
1. Must be able to control at least 2 DC/Stepper motors
2. Must be camera compatible
3. Must be able to store data from the mapping system for later processing.
4. Must be small enough to fit on the ROBO MAT and inside the bore
5. Must have a high processing power
6. Camera data collection frequency >3Hz
The Raspberry Pi B+ featured a Camera Serial Interface (CSI), which enabled it to collect data from a camera with a frequency requested by the sponsor (>3 Hz). Furthermore, the availability of high resolution cameras (Section 3.13) for the Raspberry Pi was essential. Finally, the Raspberry Pi B+ was utilized for its ability to control DC motors, read encoders, and operate the laser. The only downfall of the Raspberry Pi B+ was its inability to read more than 3 encoders while doing all of the aforementioned processes (Section 3.10). This impedance is the result of the Raspberry Pi B+’s processing power. While it does have a powerful processor, it could only read one encoder with accuracy while operating the motors, camera, and laser all at the same time.
he Raspberry Pi B+ features some bulky components that were unnecessary for the ROBO MAT procedure. Thus, these components, namely the Ethernet port and one of the USB hubs were removed to add extra clearance between the Raspberry Pi and the bore (Figure 40). Finally, if there was any electrical contact across the Raspberry Pi pins there would be the potential that the microcontroller could burn out and become unusable. Therefore, it was essential that while the Raspberry Pi was turned on it did not touch the aluminum chassis. Thus, a 3D printed case was designed to prevent this from happening (Figure 41). Furthermore, the case walls were designed to position the Raspberry Pi at the desired angle to make sure there was the most clearance possible between the microcontroller and the upper forcing cone
Fig 2. CAD Design of Raspberry Pi B+ Holder
Fig 1. Modified Raspberry Pi B+
Ardumoto Board - Motor Driver Board
Functional Requirements:
1. Dual bi-directional motor control
2. Minimum of 7V and maximum of 12V input
3. Individual 5V output to power Raspberry Pi and laser pointer
4. Individual 3.3V output to power encoders
This board was capable of controlling dual motors with bi-directionality as well as featuring the ability to output 5V and 3.3V. Furthermore, the Ardumoto was able to interface with the Raspberry Pi B+. The Ardumoto also features a free circuit area in which other components can be soldered onto the board. This area was used for operating the laser. In order to prevent the motor board from resting on the aluminum chassis, a 3D printed case was made.
Fig 3. Ardumoto Board Fig 4. CAD Design of Arudmoto Board Holder