Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/mkner/arduino-l298p-mobile-robot-motor-control
arduino-L298P-mobile-robot-motor-control
https://github.com/mkner/arduino-l298p-mobile-robot-motor-control
arduino differential-drive-robots l298p motor pwm-motor-controllers robotics tt-motors wheel-encoders wheel-odometry
Last synced: 17 days ago
JSON representation
arduino-L298P-mobile-robot-motor-control
- Host: GitHub
- URL: https://github.com/mkner/arduino-l298p-mobile-robot-motor-control
- Owner: mkner
- License: bsd-2-clause
- Created: 2023-06-30T21:15:27.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2023-10-24T21:18:32.000Z (over 1 year ago)
- Last Synced: 2024-11-14T00:18:22.445Z (3 months ago)
- Topics: arduino, differential-drive-robots, l298p, motor, pwm-motor-controllers, robotics, tt-motors, wheel-encoders, wheel-odometry
- Language: C++
- Homepage:
- Size: 50.8 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
Functions for basic motor/wheel control of differential drive mobile robots\
using MotorShield L298P on Arduino UNO. Implemented in C/C++
* low level controller/actuator functions for basic motor control
* higher low-level commands using rate, time, distance units for motion control
* supports odometry using interrupt driven IR wheel encoder sensors & encoder wheels for TT-Motors
* has an auto-prime function that can kick-start TT-Motors into rotation \
when stalled and not enough current to escape resting inertia at low velocities
* versatile functions with intuitive semantic interface* wheel odometry using Runge-Kutte approximation\
with serial terminal output of runtime results from implementation of\
ICR - Instananeous Center of Rotation - equations
Example from unicycle.cUnicycle movements with a differential drive robot
Use the wheels function to create a unicycle function that limits the\
motion of the mobile robot to that of a unicycle
``` cppunicycle(FORWARD, 25, 4000) // go forward at 25% for 4 seconds
unicycle(SPIN_LEFT, 5, 2000) // spin (+) with rotational velocity (phi-dot) at 5% for 2 sec
delay(4000)
unicycle(FORWARD, 25) // move forward @ 25% continuouslyunicycle(STOP) //same as wheels(STOP,2000)
delay(2000)
```