cstriker1407的笔记本

好记性不如铅笔头

linux, 操作系统, 树莓派

树莓派学习笔记:使用L298N驱动直流电机

最近买了L298N,试了下驱动直流电机。实验结果比较奇怪,这里记录下。后面有时间的话研究下电路图,看下是不是使用上出了什么问题。

实验连线:

L298N的M1接到了直流电动机上,M1旁边的电机电源接到了5V和GND。

IN1,IN2接到了树莓派扩展板上的GPIO3,GPIO4上(BCM 22 23),L298N的电源接的5V/3.5V。

如下图:

实验结果:

树莓派扩展板

GPIO的高电平3.5V
GPIO的低电平0.2V

当L298N接入5V时
IN1-IN4的电压为4.5V
当IN1,IN2接入GPIO22 GPIO23后
GPIO22高电平            =>可以运转   =>22:3.5V 23:4.5V
GPIO22低电平            =>可以运转   =>22:0.2V 23:4.5V
GPIO22高电平,23低电平  =>无法运转   =>22:3.5V 23:0.2V
个人猜测:5V接入后,高电平为4.5V,低电平为4.5V以下。树莓派扩展板的GPIO无法输出4.5V,故全部为低电平。
当L298N接入3.5V时
IN1-IN4的电压为3.5V
当IN1,IN2接入GPIO22 GPIO23后
GPIO22高电平            =>无法运转   =>22:3.5V 23:3.5V
GPIO22低电平            =>可以运转   =>22:0.2V 23:3.5V
GPIO22高电平,23低电平  =>可以运转   =>22:3.5V 23:0.2V
个人猜测:3.5V接入后,高电平为3V,低电平为3V以下。树莓派扩展板的GPIO可以输出高低电平。

测试代码:

根据测试结果,后续初步考虑将L298N接入3.5V,如果后续不用扩展板,需要重新测试下树莓派GPIO的电平。

import RPi.GPIO as GPIO
import time

GPIO_DATA1 = 22;
GPIO_DATA2 = 23;
GPIO.setmode(GPIO.BCM);

GPIO.setup(GPIO_DATA1,GPIO.OUT);
GPIO.setup(GPIO_DATA2,GPIO.OUT);
GPIO.output(GPIO_DATA1, GPIO.LOW);
GPIO.output(GPIO_DATA2, GPIO.HIGH);

time.sleep(5);
GPIO.cleanup();

 

Leave a Reply

20 − 3 =

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据

Theme by Anders Norén

苏ICP备16032087号