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 DiY holiday project to demonstrate how you can send data from adafruitIO cloud to a balena edge device

holiday-star balena ❤️ adafruitIO Introduction A DiY holiday project to demonstrate how you can send data from adafruitIO cloud to a balena edge devic

Ayan Pahwa 3 Dec 20, 2021
LUNA: a USB multitool & nMigen library

LUNA is a full toolkit for working with USB using FPGA technology; and provides hardware, gateware, and software to enable USB applications.

Great Scott Gadgets 750 Dec 28, 2022
This is the remake of the program PYOBD. It works on Python3 and all new libraries. It was tested on Linux, Windows, and it should work on MAC too.

This is the remake of the program PYOBD. It works on Python3 and all new libraries. It was tested on Linux, Windows, and it should work on MAC too. You just need an ELM327 USB or bluetooth device and

127 Jan 06, 2023
Detic ros - A simple ROS wrapper for Detic instance segmentation using pre-trained dataset

Detic ros - A simple ROS wrapper for Detic instance segmentation using pre-trained dataset

Hirokazu Ishida 12 Nov 19, 2022
Custom component for interacting with Octopus Energy

Home Assistant Octopus Energy ** WARNING: This component is currently a work in progress ** Custom component built from the ground up to bring your Oc

David Kendall 116 Jan 02, 2023
Home Assistant custom integration for Yi cameras: yi-hack-MStar, yi-hack-Allwinner and yi-hack-Allwinner-v2

yi-hack Home Assistant integration Overview yi-hack Home Assistant is a custom integration for Yi cameras (or Sonoff camera) with one of the following

roleo 131 Jan 03, 2023
PBA: Pleco Breeding Assistant

A small monitor that reports the external, fishroom and water change parameters to have suitable water parameters and induce breeding. These two features already represent 50% of the "reproductive su

Mirko Mancin 1 Jan 19, 2022
iot-dashboard: Fully integrated architecture platform with a dashboard for Logistics Monitoring, Internet of Things.

Fully integrated architecture platform with a dashboard for Logistics Monitoring, Internet of Things. Written in Python. Flask applicati

2 Jul 29, 2022
Intel Realsense t265 into Unreal Engine

t265_UE Intel Realsense t265 into Unreal Engine. Windows only, and Livelink plugin is 4.26.2 only at the moment. Might recompile it for different vers

Bjarke Aagaard 30 Jan 02, 2023
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
It is a program that displays the current temperature of the GPU and CPU in real time and stores the temperature history.

HWLogger It is a program that displays the current temperature of the GPU and CPU in real time and stores the temperature history. Sample Usage Run HW

Xeros 0 Apr 05, 2022
Designed and coded a password manager in Python with Arduino integration

Designed and coded a password manager in Python with Arduino integration. The Program uses a master user to login, and stores account data such as usernames and passwords to the master user. While lo

Noah Colbourne 1 Jan 16, 2022
Fener ROS2 package version 2

Fener's ROS2 codes that runs on the vehicle. This node contains basic sensing and actuation nodes for vehicle control. Also example applications will be added.

Muhammed Sezer 1 Jan 18, 2022
A battery pack simulation tool that uses the PyBaMM framework

Overview of liionpack liionpack takes a 1D PyBaMM model and makes it into a pack. You can either specify the configuration e.g. 16 cells in parallel a

PyBaMM Team 40 Jan 05, 2023
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
3D-printable hexagonal mirror array capable of reflecting sunlight into arbitrary patterns

3D-printable hexagonal mirror array capable of reflecting sunlight into arbitrary patterns

Ben Bartlett 2.3k Dec 30, 2022
Baseline model for Augmented Home Assistant

Dataset Preparation Step 1. Rename the Virtual-Home output directory to 'vh.[name]', for example: 'vh.door' Make sure the directory contains 100+ fram

Stanford HCI 1 Aug 24, 2022
Get the AltAz coordinates for a given object using astropy and output on a OLED screen.

Star Coordinates Get the AltAz coordinates for a given object using astropy and output on a OLED screen. As a very very newcomer to the astronomy scen

Craig Cmehil 1 Jan 31, 2022
Brogrammer-keyboard - FIrmware for the Brogrammer Keyboard v1.0

Brogrammer Keyboard Firmware The package contains the firmware that runs on the Brogrammer Keyboard v1.0 See https://imgur.com/a/oY5QZ14 This keyboard

Devin Hartleben 1 Apr 21, 2022
MicroPython driver for 74HC595 shift registers

MicroPython 74HC595 A MicroPython library for 74HC595 8-bit shift registers. There's both an SPI version and a bit-bang version, each with a slightly

Mike Causer 17 Nov 29, 2022