All Projects → gavinlyonsrepo → Rpimotorlib

gavinlyonsrepo / Rpimotorlib

RpiMotorLib : Raspberry Pi Motor Library : A python 3 library for various motors and servos to connect to a raspberry pi

Programming Languages

python
139335 projects - #7 most used programming language
python3
1442 projects

Projects that are alternatives of or similar to Rpimotorlib

Rpi Backlight
🔆 A Python module for controlling power and brightness of the official Raspberry Pi 7" touch display
Stars: ✭ 190 (+21.79%)
Mutual labels:  raspberry-pi, library
Lib Python
Blynk IoT library for Python and Micropython
Stars: ✭ 140 (-10.26%)
Mutual labels:  raspberry-pi, library
Ofxgpio
Library C++ for raspberrypi and orangepi, GPIO interfaces compatible with openframeworks.
Stars: ✭ 155 (-0.64%)
Mutual labels:  raspberry-pi, library
Openwrt Rpi
Raspberry Pi & NanoPi R2S/R4S & G-Dock & x86 OpenWrt Compile Project. (Based on Github Action / Daily Update)
Stars: ✭ 3,492 (+2138.46%)
Mutual labels:  raspberry-pi
Jails
An alternative for Javascript Vanilla Applications
Stars: ✭ 153 (-1.92%)
Mutual labels:  library
Micropython Raspberrypi
bare metal Raspberry Pi Zero / Zero W port of MicroPython
Stars: ✭ 153 (-1.92%)
Mutual labels:  raspberry-pi
Degate
Open source software for chip reverse engineering.
Stars: ✭ 156 (+0%)
Mutual labels:  library
Garland View Android
≡ GarlandView seamlessly transitions between multiple lists of content. Made by @Ramotion
Stars: ✭ 1,855 (+1089.1%)
Mutual labels:  library
Paintablevectorview
PaintableVectorView enables to change color of paths/groups in Vector Drawable (SVG)
Stars: ✭ 156 (+0%)
Mutual labels:  library
Harfbuzz
HarfBuzz text shaping engine
Stars: ✭ 2,206 (+1314.1%)
Mutual labels:  library
Android Ui Animation Components And Libraries
Android UI libraries, components and animations by @Ramotion
Stars: ✭ 1,982 (+1170.51%)
Mutual labels:  library
Gappein Chat Sdk
A plug and play modular toolkit for integrating the Chat feature on top of Firebase!
Stars: ✭ 154 (-1.28%)
Mutual labels:  library
Dem.net
Digital Elevation model library in C#. 3D terrain models, line/point Elevations, intervisibility reports
Stars: ✭ 153 (-1.92%)
Mutual labels:  library
Minimu9 Ahrs
Program for reading data from the Pololu MinIMU-9 over I²C. Works on the Raspberry Pi and other embedded ARM Linux boards.
Stars: ✭ 153 (-1.92%)
Mutual labels:  raspberry-pi
Pulltobounce
Animated "Pull To Refresh" Library for UIScrollView. Inspired by https://dribbble.com/shots/1797373-Pull-Down-To-Refresh
Stars: ✭ 1,866 (+1096.15%)
Mutual labels:  library
Rot.js
ROguelike Toolkit in JavaScript. Cool dungeon-related stuff, interactive manual, documentation, tests!
Stars: ✭ 2,002 (+1183.33%)
Mutual labels:  library
Piscope
Turn your Raspberry Pi into an Oscilloscope/XY Plotter with Python
Stars: ✭ 155 (-0.64%)
Mutual labels:  raspberry-pi
Gymnasticon
Make obsolete and/or proprietary exercise bikes work with popular cycling training apps like Zwift, TrainerRoad, Rouvy and more.
Stars: ✭ 155 (-0.64%)
Mutual labels:  raspberry-pi
Codeeditor
Code Editor Native Way
Stars: ✭ 155 (-0.64%)
Mutual labels:  library
Dotnet Etcd
A C# .NET (dotnet) GRPC client for etcd v3 +
Stars: ✭ 157 (+0.64%)
Mutual labels:  library

RpiMotorLib, A Raspberry pi python motor library

ScreenShot dcmotor ScreenShot Nema ScreenShot L298N ScreenShot A4988

Table of contents

Overview

  • Name: RpiMotorLib
  • Title: Raspberry pi motor library.
  • Description:

A python 3 library for various motors and servos to connect to a raspberry pi. There are three categories in library. Stepper motors , Dc Motors and Servos. The end user can import this library into their projects and then control the components with short snippets of code. The library is modular so user can just import/use the section they need.

Installation

The library was initially tested and built on a raspberry pi 3 model b, Raspbian jessie 8.0 and python 3.4.2. It was also tested for Python (3.5.3) and Raspbian stretch 9.9 . Also for Windows 10 users See issue number 2 at project Github URL.

Make sure that python 3.5.3 and pip have been installed on your machine, then:

sudo pip install rpimotorlib

Information script

A small script is installed to display version and help information. Run the information script by typing. RpiMotorScriptLib.py -[options]

Option Description
-h Print help information and exit
-v Print version information and exit

Files

rpiMotorLib files are listed below:

File Path Description
RPiMotorLib/RpiMotorLib.py stepper motor python library file
RPiMotorLib/rpiservolib.py servo python library RPi.GPIO PWM file
RPiMotorLib/rpi_pservo_lib.py servo python library pigpio PWM file
RPiMotorLib/rpi_dc_lib.py DC python motor library file
RPiMotorLib/RpiMotorScriptLib.py small script with meta data about library
documentation/*.md 14 markdown library documentation files
test/*Test.py 12 python test files
/usr/share/doc/RpiMotorLib/README.md This help file

Dependencies

  1. RPi.GPIO 0.6.3 Rpi.GPIO pypi page

A module to control Raspberry Pi GPIO channels. This package provides a class to control the GPIO on a Raspberry Pi. This should already be installed on most Raspberry Pis.

  1. pigpio 1.60-1 Homepage

This Dependency is Optional, it is currently only used in one of the two servo control options. pigpio is a library for the Raspberry which allows control of the General Purpose Input Outputs (GPIO).

Components

Şeparate help files are in documentation folder to learn how to use library. Click on the relevant URL in help file section. Test files used during development are in test folder of repo. Example snippets are also available in some of the documentation files.

  1. Stepper motors
Motor Motor controller Help File URL link
Unipolar 28BYJ-48 ULN2003 driver module URL
Bipolar Nema 11 L298N H-Bridge controller module URL
Bipolar Nema 11 A4988 Stepper Driver Carrier URL
Bipolar Nema 11 DRV8825 Stepper Driver Carrier URL
Bipolar Nema 11 A3967 Stepper Driver aka "easy driver v4.4" URL
Bipolar Nema 11 TB6612FNG Dual Driver Carrier URL
  1. DC motors
Motor Motor controller Help File URL link
DC Brushed Motor L298N Motor controller module. URL
DC Brushed Motor A transistor. URL
DC Brushed Motor L9110S Motor controller module. URL
DC Brushed Motor DV8833 Motor controller module. URL
DC Brushed Motor TB6612FNG Dual Motor Driver Carrier URL
  1. Servos
Servo Link
Servo software timing RPi.GPIO module PWM
Servo hardware timing pigpio library module PWM

Notes

There are two different options for controlling the servo. When using Rpi_GPIO option you may notice twitching at certain delays and stepsizes. This is the result of the implementation of the RPIO PWM software timing. If the application requires precise control the user can pick the pigpio library which uses hardware based timing. The disadvantage being they must install another dependency.

NEMA 11 bipolar stepper motors where used in tests but most other bipolar 4-pin motors of similar type should work in place of Nema 11.

There is a libre office spreadsheet file in the Documentation folder called Matrix, which shows which class is used for which controller, or consult the docstring of the appropriate python file.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].