智能小车

我要开发同款
Sirius73632022年04月27日
172阅读

作品详情

  基于树莓派开发的智能小车可以完成简单的消防任务中的勘测工作。通过选装TB6612电机驱动模块来驱动电机,其主要原理是由TB6612引申出的两个引脚ANI1和ANI2来控制电机正反转,从而实现其移动左右转。ANI1为低电平,ANI2为高电平电机正转,ANI1为高电平,ANI2为低电平电机反转,前进电机都正转,后退都反转,左转时右边电机不动左边电机正转,右转反之。为了精确的控制小车的速度,因此使用了PWM脉冲宽度调制,通过控制其高电平导通时间从而控制电机转速来控制小车速度,但要注意PWM要初始化。  为了操控小车,由此引入红外遥控模块,此模块选装了红外遥控器、红外接收器,接收器接树莓派引脚,红外通信的主要通信方式为i2c通信,选用红外通信可以比自身系统驱动更便捷,更轻巧的去操纵小车,非常适合日常的消防工作,软件方面先配置lirc,然后录入红外遥控器按键编码,再在代码中写入lirc定义、读取配置、读取按键,最后根据按键完成相应的遥控,此间为了防止按键误触,在读取按键时加入延时以防止误触。  为了避免因误操作而使小车撞到障碍物,因而引入了红外避障模块,这个模块选取了两个红外传感器分别放置车头左右两侧,传感器检测到障碍物时,传感器为低电平,当用digitalRead()函数读到左侧传感器为低电平时,小车右拐,反之右侧读到则左拐,若左右都读到则后退。  保险起见,此小车还引入了超声波避障模块来辅助避障,它选用了HC-SR04超声波模块,使用到了一个测距函数,首先Trig发射一个10ms脉冲波,echo为低电平时记录一个时间,echo为高电平时记录一个时间,两个时间相减,距离=声波速度*时间差/2,当距离小于10cm时,小车会完成后退操作。
查看全文
声明:本文仅代表作者观点,不代表本站立场。如果侵犯到您的合法权益,请联系我们删除侵权资源!如果遇到资源链接失效,请您通过评论或工单的方式通知管理员。未经允许,不得转载,本站所有资源文章禁止商业使用运营!
下载安装【程序员客栈】APP
实时对接需求、及时收发消息、丰富的开放项目需求、随时随地查看项目状态

评论