一起来玩树莓派 第五课:自动驾驶树莓派小车(含全部代码) 作 者:赵贵生 医疗器械研发工程师&树莓派爱好者 参考作者:1 www.sentdex.com (一位外国外工程师的教程) 引用作者 观澜小站(优酷)
声 明: 1、本系列文档原始资料,能查到原始作者外都已标明原作者,否则无法标明。 2、欢迎各位朋友转载和分享,仅需标明出处及作者姓名。 3、本系列提倡动手实践,含有一些PYTHON语言讲解,适合初学者,大牛请绕道! 4、本系列重新实践了网上的一些树莓派教程同时加入一些新的设计,力求系统全面、全开源、易理解。但由于能力有限,若文章中有问题,欢迎朋友们指正。
系列目录: 第一课 树莓派基本硬件连接、初始设置 第二课 树莓派网络设置、VPN连接、远程控制 第三课 树莓派IO口控制:一个简单的按键点亮LED指示器 第四课 树莓派实践:制作一个树莓派电子邮箱收件提醒器 第五课 树莓派实践:树莓派机器人小车全套实用教程 第六课 智能家居:手机远程控制卧室电灯 。。。。。。 实时更新目录!!!!!! 本课目录:
一、树莓派自驾驶小车的准备工作 二、单个轮子的控制——前进、后退 三、4个轮子的联动——前进、后退、左转、右转、左旋转、右旋转 四、超声传感器的连接与编程 五、树莓派自动驾驶小车的编程与实践
一、树莓派自驾驶小车的准备工作 物料准备: 1、树莓派一个 2、HC-SR04超声波测距传感器模块 3、无线网卡一个 4、L298N电机驱动板一个 5、移动电源一个(输出至少2A以上) 6、电源小盒一个(用以通过L298N板电机供电) 7、1K电阻一个(用以连接超声传感器与树莓派) 8、小车一个 9、杜邦线若干
线路连线:
二、一个轮子的控制——前进、后退
由于我现在小车所有的轮子都已装好。左侧两个轮子是并入L298N一侧端口的。所以现在我用两个轮子的转动来演示本小节。(原理和程序都一模一样) 由于我手上没上HDMI线,所以我要远程控制我的小派。我先从路由器查寻到我的IP,然后用putty软件登入。 (如果,你不会上面一步,不要紧,看下我的第二课教程:网络配置及远程控制) 第一步:putty远程登入树莓派 输入帐户名:pi 输入密码:raspberry 注意密码不可见
第二步:输入 sudo nano robot1.py 来创建一个程序 第三步:编写如下图的代码 建议朋友自行输入,此段程序我没有拷贝TXT文档。后面复杂一些的程序我都贴出TXT文档。 L298N是一块电机驱动板。 接好电机电源及控制电源后。然后就是IN1/IN2/IN3/IN4了。 IN1为高电平(树莓派有输出就是高电平)控制一个轮子的前进,低电平(没输出)就不转 IN2则高电平(树莓派有输出就是高电平)控制上面的轮子的后退,低电平就不转。 IN3同理IN1,控制另一侧轮子的方向前进。 IN4同理IN2,控制另一侧轮子的方向后退。
为方便阅读程序,我加上一些注释,供参考!
注意:1、要在程序中使用中文字符,要加上第一行。 2、程序可以’’’ ‘’’ 注释一段,也可用#注释掉一行。注释完后该段/句不会被执行。 3、本人是在文中用#来注释掉其他的来演示的,你也可以尝试注释其他语句来看你的小车执行情况。 4、如果车轮方向不对,你可以倒一下L298N的IN1与IN2的位置。(IN3/IN4同理) 5、按CTRL+X 退出,点Y保存,按ENTER确认。 输入 sudo python robot1.py 执行程序
看看效果:车轮按我想要的方向动了。
|