设计任务及要求
1.1 设计任务与设计要求
本课题要求利用基于 Android (安卓)手机系统开发一个控制软件,该软件将实现用 WIFI 技术对玩具小车进行遥控控制,包括小车前进、后退 、转弯等功能。
(1)实现手机与小车 WIFI 连接;
(2)能够通过手机对小车进行实时控制。
1.2 设计时要考虑的问题
a、由于该课题的小车端是通过单片机串口通信接收收手机是控制指令,因此需要对单片机定时器初值进行设置, 若采用常用 12M 晶振, 初值不一定是整数,通信时便会产生积累误差,进而产生波特率误差,影响通信的同步性。采用11.0592M 晶振可以得到非常准确的数值,因此在制作过程中最好采用 11.0592M或其整数倍的晶振。
b、小车电机启动时电流较大,可能会将电源的电压瞬间拉低,导致单片机和路由器不能正常工作,因此必须设计一个可靠的供电系统。
c、 由于 Android 系统所有源代码都已公开并且可以免费使用, 各手机公司在开发自己产品时可以随意改动代码,进而在市场上出现了所谓的“基于 Android的· · · 改良系统” 手机, 这些手机对安卓手机软件兼容性有所差异, 因此必须选择“安卓原版”的手机开发软件,我们采用了“安卓 4.0”版本的操作系统。
d、由于单片机 IO 口电流为 mA 级,无法直接驱动电机,必须设计专门的电机驱动模块。
2 系统总体设计
2.1 方案论证
要实现手机通过 WIFI 控制小车,有两种方案可以实现:方案一:通过 SIM 卡来实现。系统框图如下图所示:
方案二:通过小型路由器来实现。该方案是在小车端安装一个小型路由器,是小车周围一定范围具有 WIFI 覆盖, 然后将手机连接到路由器 IP 地址, 对其发送指令, 路由器接收指令后对单片机串口发送数据指令, 实现控制。 系统框图如下:
通过比较以上两种方案。 方案一虽然可以实现小车超远程控制, 但开发成本较高, 相对于大一学生来说技术难度较大, 而且控制过程要消耗上网流量。 而方案二则相对简单,开发难度较低,适合制作玩具小车,因此我们选择了方案二。
2.2 总体设计框图
遥控小车系统总框图如下所示
3 系统硬件设计
系统的硬件框图如图所示,包括六个部分组成。下面将分别介绍该六个单元。
3.1 手机端设计
3.2 手机选择
由于安卓系统的极速发展,现在安卓智能机的价格已经能降到 600 元以下,基于安卓的应用软件层出不穷。 由于安卓系统所有源代码都已公开并且可以免费使用, 各手机公司在开发自己产品时可以随意改动代码, 进而在市场上出现了所谓的“基于 Android 的· · ·改良系统”手机,源代码的改动会影响手机对安卓软件的兼容性, 增大开发难度,因此必须选择“安卓原版”的手机开发软件,我们采用了“安卓 2.3.3”版本的操作系统。
3.3 单片机电路
3.3.1 单片机选择
在这里, 单片机要实现对电机驱动模块的控制, 同时还要有路由器进行串口通信, 为了能够控制电机转速, 可以使用单片机的定时器来实现, 利用单片机定时器功能控制 IO 口产生 PWM 波,通过调节占空比里调节电机转速。
此外,STC89C52 设计和配置了振荡频率可为 0Hz 并可通过软件设置省电模式。空闲模式下,CPU 暂停工作,而 RAM 定时计数器,串行口,外中断系统可继续工作, 掉电模式冻结振荡器而保存 RAM 的数据, 停止芯片其它功能直至外中断激活或硬件复位。 同时该芯片还具有 PDIP、 TQFP 和 PLCC 等三种封装形式, 以适
应不同产品的需求。
该单片机主要特性:
• 8031 CPU 与 MCS-51 兼容
• 8K 字节可编程 FLASH 存储器(寿命:1000 写/擦循环)
• 全静态工作:0Hz-24KHz
• 三级程序存储器保密锁定
• 128*8 位内部 RAM
• 32 条可编程 I/O 线
• 两个 16 位定时器/计数器
• 6 个中断源
• 可编程串行通道
• 低功耗的闲置和掉电模式
• 片内振荡器和时钟电路
3.3.2 晶振选择
由于该课题的小车端是通过单片机串口通信接收收手机是控制指令, 因此需要对单片机定时器初值进行设置,若采用常用 12M 晶振,初值不一定是整数, 通信时便会产生积累误差,进而产生波特率误差,影响通信的同步性。采 用11.0592M 晶振可以得到非常准确的数值,因此在制作过程中最好采用 11.0592M或其整数倍的晶振。
3.4 电机驱动模块
由于小车底盘电机额定电压为 12V, 度电机驱动模块选择了常用 12V 电机驱动芯片 L298N。
L298N 恒压恒流桥式 2A 驱动芯片, L298N 可接受标准 TTL 逻辑电平信号 VSS,VSS 可接 4. 5~7 V 电压。 4 脚 VS 接电源电压, VS 电压范围 VIH 为+2. 5~46 V。输出电流可达 2.5 A,可驱动电感性负载。1 脚和 15 脚下管的发射极分别单独引出以便接入电流采样电阻, 形成电流传感信号。 L298 可驱动 2 个电动机, OUT1,OUT2 和 OUT3,OUT4 之间可分别接电动。
3.5 电机
12V 138rpm 直流电机
3.6 电源设计
小车电机启动时电流较大, 可能会将电源的电压瞬间拉低, 导致单片机和路由器不能正常工作,因此必须设计一个可靠的供电系统。
解决该问题常用以下三种方法:
1)、选用性能更好的的电源:
2)、采用独立电源供电,即使用两个电源分别给单片机和电机供电;
3)、在电源附近并联一个较大值的电容,当电机启动时,电流较大,电容中的电可以补偿一部分电流,保证电压不至于太低。
编辑点评:该项目的独特创新之处在于小车的控制是通过手机来实现, 而不是遥控手柄或电脑,从而使用更加方便,实现用 WIFI 技术对玩具小车进行遥控控制,包括小车前进、后退、转弯等功能。
电子发烧友《汽车电子特刊》,更多优质内容,马上下载阅览