Board logo

标题: 采用树莓派与L298N制作遥控小车全攻略 [打印本页]

作者: 我是MT    时间: 2015-5-20 18:53     标题: 采用树莓派与L298N制作遥控小车全攻略

本文主要描述使用树莓派和L298N($2.7672)制作一个简单的遥控小车,遥控器使用简单的WEB来实现。



  准备工作
  树莓派,(本文使用的是Raspberry PI 2 B型,即2B)
  8G以上TF卡 树莓派上可用和不可用的SD卡列表
  四驱小车底(含电机,注:本文中的小车底盘佩戴的是高扭矩直流电机)
  母对母、公对母、公对公(可不用)杜邦线
  L298N双HD桥电机驱动板
  无线网卡(最好支持AP的)
  充电电池组(7V以上的,镍氢或者18650充电电池皆可)
  系统安装没什么说的,系统烧到SD就可以了,我使用的Raspbian,这货是基于Debian的,配置命令习惯几乎和ubuntu/debian一样,接上网线开机进入系统配置。
  换上中科大的源,再apt-get update一次;
  为root用户设置密码;
  配置无线网卡有两中方案,编辑/etc/network/interface,网上教程蛮多的:
  自动连接到路由器,家里有无线路由器,小车在WIFI覆盖的地方;
  树莓派上搭建WIFI热点,信号更好,可以在小区里面开,顺便勾搭妹子,哦哦哦,不对,应该是淘气小孩。唯一需要注意的是网卡芯片。
  底盘组装
  拼装没啥难度,亚克力板上的牛皮纸沾得简直是丧心病狂,马蛋,废了好一会儿功夫才撕干净(⊙﹏⊙)b;
  马达那货就比较坑了,没有带线是裸机的,手中也恰巧没有电烙铁,当时我就懵逼啦。好吧,手中还有多余的公对公杜邦线,拔掉其中一头的接头,打火机烧一下(小时候学会的神技),拔掉一部分把铜线拧紧。最后铜线穿过马达接口的小洞里面,再拧紧。哎丫,没有胶带,最后用透明胶凑合凑合,绑紧。 repeat 4次。
  线路连接

  


  +12V接口
  +5V~+35V, 如需要板内取电,则供电范围Vs:+7V~+35V
  电机
  OUT1、OUT2 为电机A输出;OUT3、OUT4为电机B输出
  IO接口
  ENA和ENA分别为A、B电机的使能端,一开始ENA和ENB各自的上下两个针脚是用跳线帽连接起来的,拔掉就可以接线了。 IN1-IN4 为IO控制输入。
  弄明白L298N之后,连接就方便多了,
  OUT1 OUT2 连接小车左侧前后两个电机(并联),之前电机接出来的杜邦线公头直接往接口里面塞(好羞羞),拧紧螺丝;同理,OUT3 OUT4 连接小车右侧前后两个电机;
  便宜的镍氢电池组电源正负极分别连接12V、GND,电池组的接头是JST母头,比较好连接;
  5V和GND连接到树莓派上的5V和GND用于供电。
  ENA、ENB、IN1-IN4连接到树莓派I/O端口上。
  接好之后是这样子:

  


  摄像头模块
  摄像头是好几年前台式机用的摄像头,分辨率是奇葩的470x640,而不是480x640,mjpg-streamer下,画面是花的,等到画面调正常之后,画面却如放幻灯片一样。我勒个去!摄像头连接到装了openwrt的wndr3800路由器上流畅的没朋友,在树莓派上调来调去却怎么也不行,认命了,放弃放弃,没有摄像头也能当遥控车开。下面是演示展示:


  小车遥控器
  终于到了编程部分,为了简单,使用python的RPI.GPIO模块来操作I/O,不过我发现功能蛮少的,没找到调速的API,文档在这里,代码如下,轮子的参数视接的I/O口而定。



  最后用Flask模块实现Web,这需要在树莓派装Flask模块,在安装的时候发现树莓派的python环境是不完整的。代码仅供参考。




欢迎光临 电子技术论坛_中国专业的电子工程师学习交流社区-中电网技术论坛 (http://bbs.eccn.com/) Powered by Discuz! 7.0.0