超声波引导系统开源(三)485通信原理

本菜鸡以个人理解的白话文讲解485通信,如果想要全面专业资料请去度娘

以该项目为例:我使用的是某信公司的max487系列的芯片

那max487和485通信有什么关系呢?

一般来说,网上最常见的是max485的资料

从硬件设计和软件设计上来说,两者区别不大,可以通用

但487的带载能力比485强

根据项目需求,所以选择max487


具体来讲解一下485通信驱动引脚


所有的485模块(host板、slave板、display板、上网板)的A端与A端相连,B端与B端相连

RX\TX连接单片机串口的RX\TX

485_S_G管脚通过高低电平的转换来控制数据的收发。


还有485是半双工的。收发不能同时进行。


/**********************************************分割线*******************************************/

大牛绕行

萌新继续往下看

在485总线这条链路上,如何才能正确通信呢?


本菜鸡先用白话文解释下什么是全双工?什么是半双工?

建立全双工模型:萌新和萌新女友,萌新是收端,萌新女友是发端。A和A女友,A是收端,A女友是发端。

收端不发,发端不收。

一天,萌新女友和A女友吵架,发端不收,so,萌新女友和A女友只管阐述自己的观点,至于对方讲的什么,根本没有听进去。

萌新和A,收端不发,自然是萌新默默的听着A女友的碎碎念,A听着萌新女友的牢骚。

结论:即使两个发端同时发送消息,对方的收端都能够收到消息


接下来解释半双工

还是萌新和萌新女友:萌新和萌新女友两个人既可以作为发端,也可以作为收端

一天,萌新和女友煲电话粥,两个人都是第一次打电话,萌新准备说,“hello girlfriend”

谁知道“hello”刚说完,“girlfriend”还未说,女友听到了“hello”立马回复“hi”。此时萌新的"girlfriend"

也正好说出口。于是乎“girlfriend”与“hi”在链路上起了冲突。“滋滋滋”,结果两个人都没有听清楚对方说的是什么,

这就是半双工:收发不能同时进行。


为了保证每次通信不产生冲突,萌新与女友商定,女友是host,萌新是slave,当host发起询问时,slave才进行响应。

也就是说,两人打电话时,萌新不主动说话,当女友说完话后,说:“萌新我说完了,你讲吧”。此时,萌新开始说话。

当萌新说:“my dear,我说完了”。此时响应结束。可以由女友再次发起询问请求。

本方案采用超声波测距模块作为小车平衡状态的检测,免去了对加速度、陀螺仪传感器的理解和复杂处理算法。小车的平衡控制仍然采用网络上流行的Arduino开源硬件,再加上电机驱动模块 L298N,电机仍然采用TT马达(香蕉电机)。 该方案为了降低成本,采用电位器调整设定小车的平衡参数,不使用蓝牙无线模块或有线串口在线调整参数。 硬件设计 硬件设计比较简单,以Arduino Nano为核心控制模块,采用HC-SR04超声波测距模块,L298N电机驱动模块,供电采用7.4V/2200mAh锂电池。图中个10K电位器分别用于平衡点设置、PD算法中Kp和Kd系数设置的调整。 电路原理图如下所示: 图中J1为HC-SR04超声波测距模块,J2、J3为L298N模块,Arduino Nano为核心控制模块,MG1、MG2分别为左右电机。 遥控超声自平衡小车视频 该方案利用PWM的输出值近似计算出车速,再用速度PD计算出平衡距离修订值,从而实现小车的速度给定。该方案的优势与用速度PD计算出PWM修订值不同,换上真实速度传感器,即可在变化的坡度上实现超声自平衡小车的平衡。 坡度动态改变时的超声自平衡小车视频(拆了门板做的测试) 平面与坡度上的超声自平衡小车 附件内容包含: 超声波测距平衡小车设计文档 超声波测距平衡小车器件采购清单 超声自平衡小车程序 串口调试助手程序
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值