RaspberryPi Robot Project
Technologies: | Render: |
intent
Currently designed to act as programmable sentry.
🔹 control : RPI_0w using NodeJs server to access GPIO Python code
🔹 movement : 4 MG995 Servos, 2 subMicro Grippers & HS55 Servos, PCA9685 I2C Controller
🔹 sensing : RPI 2.1 Camera, Insiq Bluetooth Speaker, Microphone MI-305
🔹 travel : Tamiya Track, Double Gearbox, 2 F130 DC Motors, L293D
🔹 added : 10 mm color LED, USB mini microphone
🔹 power : rechargeable TL-PB 10400 & TL-PB 5200 mAh Powerbanks
Explores various inexpensive bare metal programming technologies. Future possibilities:
▶️ completion of the I2C servo operation
▶️ VAC (Voice Activated Commands) for more autonomous response
▶️ simple AI NLP for generalized communication
▶️ ESA AstroPi SenseHat for environment detection
The descriptions below show the most recent developments first.
robot 3 / added Servo armature
- servos: (4) Servo Motor, PN: MG995
- control: PCA9685 16 Channel 12-Bit PWM Servo Motor Driver
- speaker: USB Bluetooth Speaker Insiq PN: 4326595940
🔹 (upgrades BT3500SLV) - servos: (2) Hitec subMicro Servo motor, PN: HS55
🔹 (upgrades HS300) - grippers: (2) Actobotics subMicro Gripper Kit, PN: 637104
🔹 (upgrades "A" Grippers) - steppers: (4) Stepper Motor 28BYJ48
🔸 (later removed) - control: (4) ULN2003 Driver Board
🔸 (later removed)
The SketchUp 3D drawing required only new Flange & Gripper drawings.
All the other components were accessible online.
Originally, the Steppers were used because they had an optimal fit & flexibility.
However, they were not scalable; there were too many GPIO leads needed.
A RPI 40 pin J8 form factor required a different addressing solution.
Note that some websites suggest RPI timing is not reliable enough many protocol calls.
robot 2 / added camera, grippers
- camera: RPi Camera v2.1 with 8 Megapixel & 1080p resolution, PN: 2.1
- speaker: GearHead Bluetooth Speaker, PN: BT3500SLV
- microphone: USB mini microphone, PN: MI-305
- light: 10 mm color LED
- battery: TPLink PowerBank 10400 mAh, PN: TP-PB10400
🔹 (upgrades 4 AA batteries) - grippers: (2) Actobotics Horizontal Gripper Kit "A", PN: 637094
- servos: (2) HiTec Servo motor, PN: HS300, with C24T or H25T spline
The Grippers and Speaker worked, but proved to be clunky.
The LibreCad 2D CAD representation with BOM.
robot 1 / travel control via SmartPhone
- computer: RPi0WF 1.1 SOC with BCM2835 cpu
- control: L293D Controller DriveShield
- gearbox: Tamiya Double Motorized Gearbox, PN: 70168 with (2) F130 DC Motors
- chassis: Tamiya Tracked Vehicle Chassis, PN: 70108-1500
- battery: TPLink PowerBank 5200 mAh, PN: TP-PB5200 (for RPi)
- battery: (4) AA batteries in case (for motors)
The RPi operates the L293D thru GPIO ports using Python PWM code signaled by a NodeJS server.
software
os base: Raspbian, Bash, Putty, WinSCP, GitHub...
control: Python & IDLE for DC motor PWM control
server: NodeJS, Express, (JavaScript, HTML, CSS) for view
drawing: LibreCad 2D CAD, Sketchup 3D
The L293D Controller pinout diagram.
xtra
github image viewer
stackoverflow github html discussion