采用Cortex-M3单片机设计的WiFi物联网小车

最新更新时间:2014-12-22来源: 互联网关键字:Cortex-M3  单片机设计 手机看文章 扫描二维码
随时随地手机看文章

  WiFi物联网小车设计方案,采用电脑上位机软件通过无线WiFi 控制小车的运动,采集小车的信息。与传统的“智能小车”相比,主要特点在于使用32 位高性能单片机控制、互联网通信机制和电脑上位机软件控制。此方案融合了电脑软件、网络通信、图像处理、图形显示、运动控制、速度采集和温度采集等技术,具有“物联网”的相关特点。传统的小车控制大多使用红外通信,使用遥控器进行控制,不但受到距离的限制,而且远没有电脑软件直观美观。互联网通信使小车具备远程控制的能力,这是红外通信望尘莫及的。此外,本方案小车控制芯片采用Cortex-M3单片机,该单片机具有极丰富的外设,这给小车以后功能升级和扩展奠定了基础。

  1 总体设计方案

  WiFi 物联网小车设计方案需要达到的目的是使用电脑软件(简称上位机)通过互联网与小车控制端(简称下位机) 进行通信,从而控制小车的运动,采集小车的速度、温度以及视频监控等功能。总体设计方案如图1 所示。图中有2 种通信模式可选,其中“WiFi 局域网小车控制”是采用局域网的方式,将上位机、无线路由器和小车组成一个局域网,实现上位机控制小车的目的。“互联网远程小车控制方案”是采用远程互联网的方式,将上位机与小车组成一个互联网,从而实现远程控制小车的目的。2 种方案的技术类似,由于受到实验条件的限制,本设计以局域网小车控制为例进行讲解说明。

  

 

  图1 总体方案设计

  从通信的角度来讲,无线路由器是上位机和下位机的数据中心,上位机通过Winsocket 套接字编程创建一个网络接口与路由器进行连接,小车端通过一个串口转WiFi 模块,将串口数据通过WiFi 模块转换成WiFi 信号与路由器交互。此过程中,上位机和下位机WiFi 模块均有一个独立的局域网IP 地址。通过这个IP 地址上位机和下位机便可以实现网络通信。

  从控制的角度来讲,上位机是小车的控制中心,上位机通过“按键”发出指令给小车,小车收到指令后回传相关数据给上位机,上位机收到小车回传的数据,经过解析,将其显示出来。

  1.1 上位机软件设计

  上位机主要功能是控制小车运动,显示小车的速度、周围的温度以及小车采集的摄像。如图2 所示,这些功能由2 个线程来完成分别是“图像、声音处理线程”和“小车运动控制,速度、温度采集线程”等。前一个线程主要负责接收并处理有小车WiFi摄像头传过来的图像信息和音频信息,此部分主要涉及到DirectShow 相关技术。后一个线程主要负责小车运动的控制,包括“前进、后退、左转、右转、停止、加速、减速、转向灯和喇叭”以及接收处理小车回传的温度和速度信息等,并用虚拟图表显示出来。上位机软件2 个线程都创建了一个互不相干的套接字,前者用于与小车WiFi 摄像头进行数据交互,后者用于与小车串口转WiFi 模块进行数据交互。

  

 

  图2 上位机软件设计方案

  1.2 下位机软件设计

  下位机软件设计,即Cortex-M3 核心处理器的程序设计,如图3 所示。设计方案主要包括:摄像的控制、小车4 个电机的控制、DS18B20 温度数据的采集、红外对管速度模块数据的采集以及采集到数据后数据的处理打包发送等内容。其中摄像的控制、电机控制以及温度和速度的采集均以函数的形式获取,当下位机收到上位机的相关命令后,便调用相应的函数获取到结果后用固定的格式发送给上位机。

  

 

  图3 下位机软件方案

  下位机实现WiFi 与无线路由器通信的核心是串口转WiFi 模块,通过这个模块可以将下位机发送的串口数据直接转换成WiFi 信号发射出去。在使用此模块之前可以通过多种方式进行配置,只要配置好了,便可以与制定的WiFi 接入点进行网络通信。

  2 设计方案特点及扩展说明

  2.1 特点介绍

  本方案是基于将电脑软件、互联网通信以及单片机技术相结合的理念构想设计的。从单片机的选型、通信方案的确定以及上位机软件的设计等都与传统的“智能小车”有很大的特别之处。以下是本设计方案的3 大特色:

  ① 小车的控制芯片采用功能强大的Cortex-M332 位高性能、低功耗的处理器,该芯片具有丰富的外设,芯片还支持ARM 公司提供的RLTx 实时操作系统,使用起来非常方便;

  ② 通信方式采用TCP / IP 通信协议,使用无线WiFi 技术,实现对小车的控制。此通信方案(如图1),在具有私有IP 的情况下可以连接远程网络,可以通过远程网络遥控小车,这在“智能家居”和“远程医疗”等领域将会有不错的使用价值;

  ③ 利用电脑上位机管理软件,使单片机控制、网络通信和计算机软件有效地结合。此方案设计上位机软件来管理小车,符合将复杂的控制简单化、界面化的设计理念。  2.2 扩展说明

  Cortex-M3 单片机强大丰富的外设资源为本设计的扩展奠定了强大的基础。除了已实现的功能外,单片机还剩下2 个串口未用,这使小车还可以添加如下功能:GPS 导航功能、语音功能以及GSM/GPRS 发短信、打电话和无线上网功能。

  3 方案难点及关键技术

  方案难点有:

  ① 上位机控制小车的运动对实时性的要求很高,而采集小车的速度并用表盘显示出来,这对通信的稳定性又提出了要求,而对于本来就存在延时的TCP / IP 通信来说更是难上加难;

  ② 图像处理主要是借鉴网上DirectShow 开发指南中提供的技术,很多内部的处理机制和信号过滤器的使用是难点;

  ③ 上位机速度表盘显示速度不连贯,偶尔还有“卡死”的现象。

  关键技术有:① 通信协议的制定;② 下位机采集并处理信息的方法;③ 上位机套接字编程,速度表盘动态显示速度;④ 上位机显示小车监控视屏;⑤ 小车作为WiFi 接入点接入网络。

  4 系统仿真结果分析

  4.1 WiFi 物联网小车整体外观

  小车整体外观如图4 和图5 所示,系统由上位机和小车组成,小车控制电路放在小车上。小车控制器主要包括:电机控制、测速、测温、通信、图像采集和无线路由等。

  

 

  图4 WiFi 物联网小车

  

 

  图5 小车俯视图

  4.2 系统整体调试

  WiFi 物联网小车控制系统上位机界面主要包括:网络设置、功能设置、视屏监控区、运动控制区、速度显示区、温度显示区以及调试窗口。网络设置用于上位机与小车进行网络连接,输入小车IP 地址,点击“连接”即可。视频监控功能需要小车端安装WiFi摄像头,通过点击视频显示框下面的“Call”按钮可以连接WiFi 摄像头的IP 地址,连接成功即可获取摄像头采集到的图像。运动控制区用于控制小车的运动和显示小车的转向灯、喇叭等。速度显示区是一个速度表盘用于显示小车的实时速度。温度显示区是一个温度计的图形界面,可以显示小车上DS18B20 传感器的温度值。通信调试窗口在调试程序时使用。

  4.2.1 网络连接

  网络连接调试使用网上下载的TCP网络调试助手,首先设置TCP调试助手为服务器模式,设置服务器监听IP为192.168.16.110,端口设为345,连接网络,此IP 地址和端口号是UART 转WiFi 模块的IP地址和端口号,通过单片机用AT 指令设定。网络连接成功后,小车上位机会不断的发送“014,SR1,TE1,029.6”,表示小车端当前的温度是29.6 ℃。

  4.2.2 小车运动

  小车运动控制部分的调试同样采用上位机和TCP 网络调试助手进行调试。连接好网络后,在上位机上分别点击“↑”,“↓”,“←”,“→”,“█”,“加速”,“减速”。在调试助手接收窗口上依次接收到“:014,SG1,UP1,;” 、“:014,SG1,DO1,;”、“:014,SG1, LE1,;”、“: 014, SG1, RI1,;”、“: 014, SG1,ST1,;”、“: 014, SG1, AD1,;” 和“: 014, SG1,SU1,;”,分别表示“前进”,“后退”,“左转”,“右转”,“停止”,“加速”和“减速”。

  4.2.3 温度和速度的显示

  温度和速度的测试直接在小车的实际运动过程中进行测试。打开小车,连接上位机,用手捂住小车上的DS18B20,观察上位机上温度显示区模拟温度计的度数变化,然后用手转动小车的轮子观察上位机速度显示区速度表盘指针的变化,改变温度和速度的大小,发现速度表盘指针和温度指示相应发生变化,因此可以判断温度和速度的传输没有问题。

  5 结束语

  通过反复调试和修改代码,可以实现预想的功能。通信稳定,小车的控制可靠,数据采集的准确度和灵敏度达到要求。在不涉及到远程联网控制的情况下,系统的稳定性和可靠性已经远远超过普通的红外遥控小车和无线射频遥控小车。方案的意义在于将电脑软件技术、网络技术和单片机技术有效结合,突出体现并且深化了“物联网”的含义,未来必将广泛应用于社会生活和生产中。方案的应用领域主要有无人驾驶、远程监控和智能家居等。

关键字:Cortex-M3  单片机设计 编辑:探路者 引用地址:采用Cortex-M3单片机设计的WiFi物联网小车

上一篇:不增加成本的32位移植设计
下一篇:Linux嵌入式系统开发平台选型探讨

推荐阅读最新更新时间:2023-10-12 22:50

基于单片机的低功耗投影仪的RGB LED驱动器设计
引言 本应用笔记提供了一个低功耗投影仪RGB LED驱动器的参考设计。基于单芯片MAX16821构建大电流LED驱动器,能够为一组降压驱动的RGB LED提供高达10A的电流,通/断时间小于1µs。某一时刻只驱动一个彩色LED,RGB按比例共用PWM周期。 LED驱动器技术指标 输入电源电压:10V至15V LED驱动电流:10A LED正向偏压:4.5V至6V LED电流上升/下降时间: 1µs LED电流纹波:10%峰峰值,最大值 输入 VIN (J4):电源输入 PWMR、PWMB、PWMG (J8的引脚1、3和4):RGB PWM输入信号,幅值应为3.3V至5V。当输出的上升/下降时间保持在1µs以内时,任何超出2µs
[单片机]
基于<font color='red'>单片机</font>的低功耗投影仪的RGB LED驱动器<font color='red'>设计</font>
单片机和PC机在实时温度控制系统设计
   设计了一种利用单片机和PC 机来实现的实时温度控制系统,包括硬件设计和软件设计。系统采用STC89C52 单片机作为主芯片,DS18B20 数字温度传感器作为温度采集器件,运用蜂鸣器作为报警器,VB6.0 制作上位机软件,通过串口实现单片机与PC 机的通信。系统能实时监控环境温度,并具有报警功能,具有一定的实用性。   1 引言   温度是日常生活中非常重要的物理量, 其测量包括接触式和非接触式两种,前者需要感温元件与被测物体接触, 会产生滞后现象, 后者则是通过接收被测介质发出的辐射来实现的。实时温度控制系统运用数字温度传感器DS18B20 采集温度,单片机作为主控芯片来对温度值进行处理, 控制和传输, 通过蜂
[单片机]
<font color='red'>单片机</font>和PC机在实时温度控制系统<font color='red'>设计</font>
英飞凌发起“Sustain our Planet”设计挑战赛,庆祝XMC™微控制器销量破亿
XMC™微控制器 是电动汽车充电器的核心所在,能帮助将工业和家用电器转变为智能物联网设备,还能控制医用呼吸机。现在,英飞凌科技股份公司希望通过新方法激发新动能,利用XMC™微控制器及英飞凌的其他产品,让人们的生活更加便利、安全和环保。英飞凌与e络盟(element14)社区 携手 ,向社区成员发起了一场 设计挑战赛 。 英飞凌微控制器营销总监 Ralf Koedel 近日表示:“几周前,我们的XMC微控制器的销量到达了1亿颗,这是一个里程碑式的突破。在与e络盟社区合作的这场挑战赛中,我们要求开发人员基于包括XMC在内的各种有助于地球可持续发展的英飞凌器件,开发出具有启发意义的全新设计。比如用于监测海洋微塑料粒的浮标和垃圾收集机
[汽车电子]
英飞凌发起“Sustain our Planet”<font color='red'>设计</font>挑战赛,庆祝XMC™<font color='red'>微控制器</font>销量破亿
C8051F020单片机的RS485串行通信设计
  l 引言   随着计算机技术和测控技术的不断发展,在以单片机为核心的数据采集系统中,需要实现单片机和计算机之间的数据交换,并以此来发挥单片机和计算机各自的长处,提升整个系统的性能价格比。   在计算机网络和工业控制系统中,经常需要采用串行通信来实现远程数据传输。目前,有多种接口标准可用于串行通信,包括RS232、RS422、RS485等。RS232是最早的串行接口标准,在短距离、较低波特率串行通信中得到了广泛应用。但是,RS232通信存在着传输速度慢、传输距离短、信号容易受到干扰等不足,其应用局限性已日益突出。而RS485通信采用差分方式来消除噪声,即信号在发送前会分解为正负2条线路,当到达接收端时将信号相减,使噪
[单片机]
C8051F020<font color='red'>单片机</font>的RS485串行通信<font color='red'>设计</font>
攻破单片机低功耗设计技术
单片机设计中很多外围硬件集成到CPU芯片中,但是却无形中增大了硬件冗余,加大了功耗。本文主要针对单片机低功耗低电压设计技术以及相应的注意事项。 1 单片机的低功耗设计技术 1.1 高集成度的完全单片化设计 将很多外围硬件集成到了CPU芯片中,增大硬件冗余。内部以低功耗、低电压的原则设计,这给单片机的低功耗设计提供了很强的支持。 1.2 内部电路可选择性工作 通过特殊功能寄存器选择使用不同的功能电路,即依靠软件选择其中不同的硬件;对于不使用的功能使其停止工作,以减少无效功耗。 1.3 宽电源电压范围 先进的单片机芯片工艺特别决定了单片机在很宽的电源电压范围内部能正常工作。
[单片机]
基于FPGA+MCU的大型LED显示屏系统设计
  随着平板显示技术的不断更新,大型LED显示系统利用发光二极管构成的点阵模块或像素单元组成大面积显示屏,主要显示字符、图像等信息,具有低功耗、低成本、高亮度、长寿命、宽视角等优点。近年来广泛应用在证券交易所、车站机场、体育场馆、道路交通、广告媒体等场所。   通常用单一单片机作为主控器件控制和协调大屏幕显示。由多片单片机构成的多处理器系统,其中一片作为主CPU,其他作为子CPU共同控制大屏幕的显示,该系统可以减轻主CPU 的负担,提高了LED点阵的刷新频率。但单片机的驱动频率有限,无法驱动等分辨率LED屏幕,尤其是对于多灰度级彩色大屏幕,数据送到显示屏之前要进行灰度调制重现图像的色彩,对数据的处理速度要求更高,单片机控制在速
[单片机]
基于FPGA+<font color='red'>MCU</font>的大型LED显示屏系统<font color='red'>设计</font>
基于ATmega16单片机的数字电子秤的设计
0 引言 随着电子技术和自动化测量技术的不断发展,传统的称重系统在功能、精度、性价比等方面已难以满足人们的需要,尤其在智能化、便携式、对微小质量的测量方面更显得力不从心。近年来,新型单片机的出现和集成电路技术的发展为更新产品设计,研制高性价比的称重控制器提供了条件。本设计采用AVR单片机为控制核心,结合电阻应变式压力传感器和相应的信号采集电路,设计出一种高精度、多功能、低成本的新型电子秤。 1 系统总体设计 首先由称重传感器采集因压力变化而产生的电压信号,通过A/D转换器将模拟信号转换为数字信号,把数字信号送入AVR单片机,单片机做相应的处理后,得到当前物体重量的数据,并通过LCD显示出来。系统硬件结构如图1所示
[单片机]
基于ATmega16<font color='red'>单片机</font>的数字电子秤的<font color='red'>设计</font>
基于AT89C2051单片机的纺纱断线自动检测系统的设计
引言 纺纱机器在绕线过程中,判断细线是否断线是十分重要,因此纺纱断线检测装置是根据实际需要应运而生的产品,它能对纺纱过程进行断线检测和监控。本文就根据实际需要设计了一多功能纺纱断线检测控制装置,能够自动检测纱断情况,并且在断纱时,停止电机转动,并进行报警,提醒工作人员,方便工作人员进行故障处理。该装置能给纺纱工带来无限的方便,免去了纺纱工一直观察纱线状态的麻烦,大大地为纺纱工减少了劳动强度,同时也提高了产品的质量,并且也给商家带来更大的价值。同时该装置不仅可以应用于纺纱机器,还可以用于生产类似纱线之类的某些生产厂家。 1 系统功能 基于纺纱断线检测装置的功能要求,纺纱断线检测控制装置的电路主要由以AT89C2051为核心的单片
[单片机]
基于AT89C2051<font color='red'>单片机</font>的纺纱断线自动检测系统的<font color='red'>设计</font>
小广播
最新电源管理文章
换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved