Control System
General Description
The Barbot control system will be based on an Arduino Mega 2560 and a Raspberry Pi. Power will be from a PC ATX PSU.
Control box layout
Control box - internal layout (draft)
External connections
Platform (9 way 'D' skt)
| Pin no |
Signal
|
| 1 |
+5V supply to platform
|
| 2 |
Stepper coil A
|
| 3 |
Stepper coil A
|
| 4 |
Stepper coil B
|
| 5 |
Stepper coil B
|
| 6 |
Serial TX to platform
|
| 7 |
N/C
|
| 8 |
"Glass present" signal
|
| 9 |
Ground
|
Cherry conveyor (9 way 'D' skt)
| Pin no |
Signal
|
| 1 |
N/C
|
| 2 |
Stepper coil A
|
| 3 |
Stepper coil A
|
| 4 |
Stepper coil B
|
| 5 |
Stepper coil B
|
| 6 |
N/C
|
| 7 |
IR sensor
|
| 8 |
IR LED
|
| 9 |
Ground
|
Lemon vendor (9 way 'D' skt)
| Pin no |
Signal
|
| 1 |
N/C
|
| 2 |
Motor
|
| 3 |
Motor
|
| 4 |
N/C
|
| 5 |
N/C
|
| 6 |
N/C
|
| 7 |
N/C
|
| 8 |
CAM switch
|
| 9 |
Ground
|
Stirrer (9 way 'D' skt)
| Pin no |
Signal
|
| 1 |
N/C
|
| 2 |
Motor (up/down)
|
| 3 |
Motor (up/down)
|
| 4 |
Motor (swizzler)
|
| 5 |
Motor (Swizzler)
|
| 6 |
N/C
|
| 7 |
N/C
|
| 8 |
N/C
|
| 9 |
N/C
|
Umbrella dropper (9 way 'D' skt)
| Pin no |
Signal
|
| 1 |
N/C
|
| 2 |
Solenoid
|
| 3 |
Solenoid
|
| 4 |
N/C
|
| 5 |
N/C
|
| 6 |
N/C
|
| 7 |
N/C
|
| 8 |
N/C
|
| 9 |
N/C
|
Big Syringe (9 way 'D' skt)
| Pin no |
Signal
|
| 1 |
N/C
|
| 2 |
Motor
|
| 3 |
Motor
|
| 4 |
N/C
|
| 5 |
N/C
|
| 6 |
N/C
|
| 7 |
N/C
|
| 8 |
N/C
|
| 9 |
N/C
|
Optic servos (25 way 'D' skt)
| Pin no |
Signal
|
| 1 |
+5V supply
|
| 2 |
Servo 0
|
| 3 |
Ground
|
| 4 |
+5V supply
|
| 5 |
Servo 1
|
| 6 |
Ground
|
| 7 |
+5V supply
|
| 8 |
Servo 2
|
| 9 |
Ground
|
| 10 |
+5V supply
|
| 11 |
Servo 3
|
| 12 |
Ground
|
| 13 |
+5V supply
|
| 14 |
Servo 4
|
| 15 |
Ground
|
| 16 |
+5V supply
|
| 17 |
Servo 5
|
| 18 |
Ground
|
| 19 - 23 |
N/C
|
| 24 |
Makerslide zero / limit switch
|
| 25 |
Ground
|
Carbonate drinks servos (25 way 'D' skt)
| Pin no |
Signal
|
| 1 |
+5V supply
|
| 2 |
Servo 0
|
| 3 |
Ground
|
| 4 |
+5V supply
|
| 5 |
Servo 1
|
| 6 |
Ground
|
| 7 |
+5V supply
|
| 8 |
Servo 2
|
| 9 |
Ground
|
| 10 |
+5V supply
|
| 11 |
Servo 3
|
| 12 |
Ground
|
| 13 |
+5V supply
|
| 14 |
Servo 4
|
| 15 |
Ground
|
| 16 |
+5V supply
|
| 17 |
Servo 5
|
| 18 |
Ground
|
| 19 - 25 |
N/C
|
Dashers (15 way 'D' skt)
| Pin no |
Signal
|
| 1 |
Cam switch 0
|
| 2 |
Cam switch 0
|
| 3 |
Motor 0
|
| 4 |
Motor 0
|
| 5 |
Cam switch 1
|
| 6 |
Cam switch 1
|
| 7 |
Motor 1
|
| 8 |
Motor 1
|
| 9 |
Cam switch 2
|
| 10 |
Cam switch 2
|
| 11 |
Motor 2
|
| 12 |
Motor 2
|
| 13 - 15 |
N/C
|
LEDs / bling (15 way 'D' skt)
Arduino Mega 2560 Connections
| Signal |
Arduino pin |
pinMode |
Signal type
|
| Optic 0 |
TBC |
OUTPUT |
servo
|
| Optic 1 |
TBC |
OUTPUT |
servo
|
| Optic 2 |
TBC |
OUTPUT |
servo
|
| Optic 3 |
TBC |
OUTPUT |
servo
|
| Optic 4 |
TBC |
OUTPUT |
servo
|
| Optic 5 |
TBC |
OUTPUT |
servo
|
| Mixer 0 |
TBC |
OUTPUT |
servo
|
| Mixer 1 |
TBC |
OUTPUT |
servo
|
| Mixer 2 |
TBC |
OUTPUT |
servo
|
| Mixer 3 |
TBC |
OUTPUT |
servo
|
| Mixer 4 |
TBC |
OUTPUT |
servo
|
| Mixer 5 |
TBC |
OUTPUT |
servo
|
| Dasher 0 |
TBC |
OUTPUT |
pulse low
|
| Dasher 1 |
TBC |
OUTPUT |
pulse low
|
| Dasher 2 |
TBC |
OUTPUT |
pulse low
|
| Neopixel on Dashers |
TBC |
OUTPUT |
Neopixel serial
|
| Cherry/olive conveyor |
TBC |
OUTPUT |
pulse low
|
| Lemon vendor |
TBC |
OUTPUT |
pulse low
|
| Stirrer |
TBC |
OUTPUT |
pulse low
|
| Umbrella dropper |
TBC |
OUTPUT |
pulse low
|
| Big Syringe |
TBC |
2 x OUTPUTs |
both need to support PWM
|
| Platform "glass present" |
TBC |
INPUT_PULLUP |
0 = no glass, 1 = glass present
|
| Platform illumination control |
TBC |
OUTPUT |
serial (TX to platform only)
|
| Pololu stepper controller |
TBC |
3 x OUTPUTs |
Step, Direction, Enable
|
| Limit / zero switch |
TBC |
INPUT_PULLUP |
0 = platform at zero, 1 = platform not at home position
|
| Emergency stop |
TBC |
INPUT_PULLUP |
0 = switch pressed, 1 = switch not pressed
|
| Lighting / bling ? |
? |
? |
Neopixel serial?
|
| Serial comms to/from Rassberry Pi |
|
1 x INPUT, 1 x OUTPUT |
serial (TX / RX) |
|
| Total I/O |
|
27 x OUTPUT, 3 x INPUT_PULLUP, 1 x INPUT |
|
|