Raspberry PI DC Motor code
DC motors can be controlled by the L298N DC motor driver IC, which is connected to your microcontroller. L298Ns can control up to 2 DC motors. You can easily add motors through the program code. You can set DC motor speed by changing the duty-cycle of each PWM signal. The PWM is a square-wave signal which has two parameters: frequency and duty-cycle. If a PWM signal's duty-cycle is 100% than the motor spins with maximum rpm. In case of 0% the motor will stop. Motor speed and direction in your Ozeki software can be changed on each motor with the motor's own adjustable slide bar from -100% to 100%. If the slide crosses 0 than the motor will change spin direction.
Required hardware
- Raspberry PI
- DC Motor Controller Board LM298
- DC Motor(s)
Source code to install on controller
#!/usr/bin/python import RPi.GPIO as GPIO GPIO.setmode(GPIO.BCM) GPIO.setup(17, GPIO.OUT) GPIO.setup(27, GPIO.OUT) GPIO.setup(22, GPIO.OUT) direction = input('Please define the direction (Left=1 or Right=2): ') dc = input('Please define the Motor PWM Duty Cycle (0-100): ') hz = input ('HZ: ') pwm = GPIO.PWM(17, hz) if direction == 1: GPIO.output(27, 1) GPIO.output(22, 0) elif direction == 2: GPIO.output(27, 0) GPIO.output(22, 1) try: while True: pwm.start(dc) except KeyboardInterrupt: pwm.stop() GPIO.cleanup()
More information
- How to setup a dc motor on arduino mega
- How to setup a dc motor on arduino nano
- How to setup a dc motor on arduino uno
- How to setup a dc motor on Ozeki matrix
- How to setup a dc motor on Raspberry Pi
- DC motor protocol for arduino
- How to control a dc motor using chat messages
- DC Motor Arduino
- DC Motor Desc