Samples for robotics, node, python, and bash

Overview

RaspberryPi Robot Project

robot Technologies:
raspberrypi bash python node i2c
Render:
sketchup

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.

robot_3_ISO

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_3_steppers


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. robot_2

The LibreCad 2D CAD representation with BOM. robot_2_CAD


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. robot_1


software

raspberrypi os base: Raspbian, Bash, Putty, WinSCP, GitHub...
python control: Python & IDLE for DC motor PWM control
node server: NodeJS, Express, (JavaScript, HTML, CSS) for view
sketchup drawing: LibreCad 2D CAD, Sketchup 3D

The L293D Controller pinout diagram. L293D_Controller


xtra

github image viewer
stackoverflow github html discussion

HTML5 text folding
CSS&JS folding

markdown guide
collapsible markdown

Owner
Martin George
Senior Java Application Developer
Martin George
A global contest to grow and monitor your own food with Raspberry Pi

growlab A global contest to grow and monitor your own food with Raspberry Pi A capture from phototimer of my seed tray with a wide-angle camera positi

Alex Ellis 442 Dec 23, 2022
NYCT-GTFS - Real-time NYC subway data parsing for humans

NYCT-GTFS - Real-time NYC subway data parsing for humans This python library provides a human-friendly, native python interface for dealing with the N

Andrew Dickinson 37 Dec 27, 2022
Easyeda2kicad.py - Convert any LCSC components (including EasyEDA) to KiCad library

easyeda2kicad.py A Python script that convert any electronic components from LCSC or EasyEDA to a Kicad library Installation git clone https://github.

uPesy Electronics 150 Jan 06, 2023
CircuitPython library for the CH559 USB to Serial chip

CH559 (USB to Serial) CircuitPython Library Why? Because you might want to get keyboard/mouse/gamepad/HID input into your CircuitPython projects witho

Guy Dupont 3 Nov 19, 2022
HomeAssistant - Polyaire AirTouch 4 Integration

HomeAssistant - Polyaire AirTouch 4 Integration Custom integration to add an AirTouch 4 AC Controller Installation: Copy contents of custom_components

7 Aug 05, 2022
Setup DevTerm to be a cool non-GUI device

DevTerm hobby project I bought this amazing device: DevTerm A-0604. It has a beefy ARM processor, runs a custom version of Armbian, embraces Open Sour

Alex Shteinikov 9 Nov 17, 2022
Segger Embedded Studio project for building & debugging Flipper Zero firmware.

Segger Embedded Studio project for Flipper Zero firmware Установка Добавить данный репозиторий в качестве сабмодуля в корень локальной копии репозитор

25 Dec 28, 2022
LT-OCF: Learnable-Time ODE-based Collaborative Filtering, CIKM'21

LT-OCF: Learnable-Time ODE-based Collaborative Filtering Our proposed LT-OCF Our proposed dual co-evolving ODE Setup Python environment for LT-OCF Ins

Jeongwhan Choi 15 Dec 28, 2022
Provide Unifi device info via api to Home Assistant that will give ap sensors

Unifi AP Device info Provide Unifi device info via api to Home Assistant that will give ap sensors

12 Jan 07, 2023
Real-time Coastal Monitoring at the University of Hawaii at Manoa

Coastal Monitoring at the University of Manoa Source code for Beaglebone/RPi-based data loggers, shore internet gateways, and web server. Software dev

Stanley Lio 7 Dec 07, 2021
This Home Assistant custom component adds support for controlling Midea dehumidiferes on local network.

This is a custom component for Home assistant that adds support for Midea dehumidifier appliances via the local area network. midea-dehumidifier-lan H

Nenad Bogojevic 97 Jan 08, 2023
Trajectory optimization package for Mini-Pupper robot

Trajectory optimization package for Mini-Pupper robot Purpose of this repository is to provide low-torque and low-impact trajectory for Mini-Pupper qu

Sotaro Katayama 38 Aug 17, 2022
A script and GUI for controlling stepper motors from an arduino

A script and GUI for controlling stepper motors from an arduino (nema 23 in my case but should work for others in general)

Pip 2 Aug 01, 2022
Python para microcontroladores com MicroPyhton

MicroPython - PyBR2021 Python para microcontroladores com MicroPyhton Repositório de exemplos para tutorial "Python para microcontroladores com MicroP

gabriel aragão 1 Oct 18, 2021
Micropython automatic watering

micropython-automatic-watering micropython automatic watering his code was developed to be used with nodemcu esp8266, but can be modified to work with

1 Nov 24, 2021
The project is an open-source and low-cost kit to get started with underactuated robotics.

Torque Limited Simple Pendulum Introduction The project is an open-source and low-cost kit to get started with underactuated robotics. The kit targets

34 Dec 14, 2022
This repo uses a stereo camera and gray-code-based structured light to realize dense 3D reconstruction.

Structured-light-stereo This repo uses a stereo camera and gray-code-based structured light to realize dense 3D reconstruction. . How to use: STEP 1:

FEI 20 Dec 31, 2022
Cow Feeder is a bot automatically execute trade on cowswap

Cow Feeder is a bot automatically execute trade on cowswap, includes functions: Monitoring Ethereum network gas price and execute trade whe

6 Apr 20, 2022
ArduinoWaterHeaterIOT - IoT Probe of a solar PV water heating system - Arduino, Python, MQTT, MySQL

ArduinoWaterHeaterIOT IoT Probe of a solar PV water heating system - Arduino, Raspberry Pi, Python, MQTT, MySQL The Arduino sends the AC and DC watts

Jacques Fourie 1 Jan 11, 2022
ArucoFollow - A script for Robot Operating System and it is a part of a project Robot

ArucoFollow ArucoFollow is a script for Robot Operating System and it is a part

5 Jan 25, 2022