历史上的今天

今天是:2024年10月14日(星期一)

正在发生

2020年10月14日 | 基于ARM的自主式移动机器人电路设计

发布者:科技律动 来源: elecfans关键字:ARM  自主式  移动机器人 手机看文章 扫描二维码
随时随地手机看文章

  自主式移动机器人系统是指根据指令任务及环境信息进行自主路径规划,并且在任务执行过程中不断采集局部环境信息,做出决策,从而实现安全行驶并准确到达目标地点的智能系统。本文以LPC2119为控制核心,介绍了一种轮式移动机器人的设计方案。该机器人系统应用超声传感器、光敏传感器、碰撞传感器采集外部环境信息,采用PTR2000实现移动机器人与计算机通信,从而实现现场信息的反馈和计算机控制命令的发送。


  LPC2119是Philips公司推出的支持实时仿真和跟踪的arm7TDMI-S微处理器,嵌入128KB高速Flash存储器。它采用3级流水线技术,取指、译码和执行同时进行,能够并行处理指令,提高CPU运行速度。由于其具有非常小的尺寸和极低的功耗,非常适合小型化应用。片内多达64KB的SRAM,具有较大的缓冲区规模和强大的处理能力。LPC2119内部集成2个CAN控制器、2个32位定时计数器和4个ADC单元电路。


  电机的PWM控制电路设计

  IR2110是美国IR公司推出的一种双通道、高压、高速的功率器件栅极驱动的单片式集成驱动器。它把驱动高压侧和低压侧MOSFET或IGBT所需的绝大部分功能集成在一个高性能的封装内,外接很少的分立元件即能提供极快的开关速度和极低的功耗。其特点在于:将输入逻辑信号转换成同相位低阻抗输出驱动信号,可驱动同一桥臂上的2路输出,驱动能力强,响应速度快;工作电压较高,可达600V;内设欠压封锁;成本低、易于调试;电路芯片体积小,为DIP14 封装。高压侧驱动采用外部自举电容上电,与其他IC驱动电路相比,在设计上大大减少了驱动变压器和电容的数目,降低了产品成本,减小了体积,提高了系统的可靠性。这种适用于驱动功率MOSFET和IGBT的自举式集成电路,在电源变换、电机调速等功率驱动领域中获得了广泛的应用。


  LPC2119单片机的PWM功能建立在标准定时器上,它具有32位的定时控制器及预分频控制器、7个匹配控制器,可实现6个单边PWM或3个双边PWM输出,也可以使用这两种类型的混合输出。此系统使用端口PWM0和PWM1输出两路PWM信号,分别控制移动机器人的2个驱动电机。PWM信号经过光电耦合器形成两路相位相差180°的信号加到IR2110的HIN和LIN引脚上,实现对同一桥臂上的两个MOSFET开关的控制,原理如图1所示。

  基于ARM的自主式移动机器人电路设计

  HIN为高电平期间,Q1、Q4导通,在直流电机上加正向工作电压;HIN为低电平期间,LIN端输入高电平,Q2、Q3导通,在直流电机上加反向工作电压。因此电枢上的工作电压是双极性矩形脉冲波形。由于机械惯性的作用,矩形脉冲电压的平均值决定电动机的转向和转速。


   超声传感器系统

  为减轻控制器LPC2119的负担,超声传感器系统由Atmel公司的AT89C1051单片机控制。1051单片机是含有一个1KB可编程E2PROM的高性能微控制器,它与工业标准MCS-51的指令和引脚兼容。它为很多嵌入式控制应用提供了一个高度灵活、有效的解决方案。AT89C1051有以下特点:1KB的E2PROM、128B的RAM、15根I/O线、2个16位定时 /计数器、5个二级向量中断结构、1个全双向的串行口且内含精密模拟比较器和片内振荡器,具有4.25~5.5V的电压工作范围及24MHz工作频率,同时还具有加密阵列的二级程序存储器加锁、掉电和时钟电路等。此外,AT89C1051还支持两种软件设置的电源节电方式。空闲时,CPU停止,而RAM、定时/计数器、串行口和中断系统继续工作。掉电时,保存RAM的内容,但振荡器停振以禁止芯片其他功能,直到下一次硬件复位。


  1051控制每60ms发送一路超声波,检测回波时间,并完成距离的计算。这样16路超声波循环检测一次约为1s,在常温时超声波的速度约为344m/s,可以计算出障碍物的距离,最后将超声波传感器编号及距离信息传送给LPC2119。超声波发射及接收子系统如图2所示。1051利用P1.0引脚向外发送40kHz的脉冲信号,此信号作为4-16译码器74HC154的使能信号,引脚P1.1~P1.4作为译码信号,分别对应编号0~15的超声波传感器。此信号经过9013放大后推动换能器产生40kHz的超声波信号。

  基于ARM的自主式移动机器人电路设计

  LM567是一片锁相环电路,其5、6脚外接的电阻和电容决定了内部压控振荡器的中心频率f2,f2≈1/1.1RC。其1、2脚分别通过电容器接地,形成输出滤波网络和环路单级低通滤波网络。2脚所接电容决定锁相环路的捕捉带宽:电容值越大,环路带宽越窄。LM567的工作电压为 4.75~9V,工作频率从直流到500kHz,静态工作电流约8mA。


  本设计是一个基于arm7微处理器的车载嵌入式系统,不仅满足了移动机器人控制系统的要求而且为机器人的转型应用提供了良好的技术支持。在此基础上可以加入各种先进的控制算法,实现移动机器人的智能化。

关键字:ARM  自主式  移动机器人 引用地址:基于ARM的自主式移动机器人电路设计

上一篇:采用ARM高分辨率压电陶瓷D/A电路设计
下一篇:基于ARM Cortex—M3的无线通信系统电路模块设计

推荐阅读

前言:Android编译对PC机系统性能有要求,建议使用win7 64位操作系统,硬盘最小80GB剩余容量,否则编译Android源码会出现“No space left on device”。1、搭建好的VMWare 虚拟机:参考《韦东山Android系统视频使用手册20160303》文档说明,使用已经搭建好的VMWare 虚拟机映象文件,当然也可以参照文档自己安装ubuntu-12.04.5-64bit 系统。2、设置...
“你还能多卖一台车吗?”几乎在每次汇报完工作,伊隆·马斯克(Elon Musk)都会向一位特斯拉中国区的高管提出这一问题,或者说是命令。 对于这家资金捉襟见肘的电动汽车公司来说,销量几乎成为它的一切。无论是研发新款车型、扩充充电网络,还是提振股价,都需要订单量与交付量背后的销量作为支撑。不同于通过公开募集资金或发行可转债等方式获取资金,...
“当我们竞争对手还在正向追赶我们去年的芯片水平时,我们仍然领先几代。” 苹果在今天北京时间凌晨1点开始的发布会上说的这句话,狂音绕梁,比夜间盘旋在头顶的蚊子还要持久和嚣张。 “去年发布的A13仿生依然是智能手机中最快的芯片,不过这即将改变,我们世界级芯片团队研发了一款全新的芯片——A14仿生,史上最快的智能手机芯片。” 这句话的意思很明...
AVR有不同的中断源。每个中断和复位在程序空间都有独立的中断向量。所有的中断事件都有自己的使能位。当使能位置位,且状态寄存器的全局中断使能位I 也置位时,中断可以发生。根据程序计数器PC 的不同,在引导锁定位BLB02 或BLB12 被编程的情况下,中断可能被自动禁止。这个特性提高了软件的安全性。详见 P254“ 存储器编程” 的描述。程序存储区的...

史海拾趣

问答坊 | AI 解惑

FFT核

RT,FFT核及FFT设计资料…

查看全部问答∨

TPMS解决方案中的几个关键问题

引 言   在汽车的高速行驶中.轮胎故障是所有驾驶员最为担心和最难预防的,也是突发性交通事故发生的主要原因。据统计,在国内的高速公路上,由爆胎引发的交通事故占事故总数的70%;在美国,这一比例更是高达80%。爆胎造成的经济损失巨大,所 ...…

查看全部问答∨

事实证明,所谓”人品问题“到最后都还是技术问题

原来一直用311直接搭滞回比较,但是由于自己是依葫芦画瓢做的,1脚接-5V,输出不是TTL电平,所以后面只好用9013转换了一下,一直用的还算不错 后来到其他论坛问了一下(一个是TTL问题,一个电平翻转问题),大大指出1脚接地就直接输出TTL电平了, ...…

查看全部问答∨

驱动开发启动DMA的问题

停滞一周了,希望各位大侠帮忙解决,具体问题如下:     做PCI驱动,普通方式的读写我已经实现了,现在想通过DMA对设备进行读写。在网上看到的例子都是设备自带DMA控制器,然后在EvtProgramDma例程中编程设备的DMA控制器。但我们的设备 ...…

查看全部问答∨

控制显示灯的实例

在xilinx ise中用Verilog语言写出的控制显示灯亮暗的实例…

查看全部问答∨

请问STUSB线路推荐的ST2052BD成本多少,有便宜的替代料吗?

                                 请问ST USB线路推荐的ST2052BD成本多少,有便宜的替代料吗?…

查看全部问答∨

关于恩智浦Cortex-M0、M3、M4 样片申请

各位工程师好:         很高兴在这里能认识大家,我是做NXP代理的。                 只要您是在做产品研发的,您手里的项 ...…

查看全部问答∨

制作jffs2文件系统

作者:程姚根,华清远见嵌入式学院讲师。1、zlib的编译解压zlib-1.2.3.tar.bz2并进入zlib-1.2.3配置编译安装$ tar xvf zlib-1.2.3.tar.bz2         $ cd zlib-1.2.3     &nb ...…

查看全部问答∨

STM32用定时器控制蜂鸣器时第一次为什么声音不对?

STM32用定时器控制蜂鸣器时第一次为什么声音不对?按照设计要求应该是两短的效果,但是第一次的声音特别急促,但第二次往后声音效果就正常了。求大神指点 控制函数如下: void Running_Buzzer(void) {           ...…

查看全部问答∨
小广播
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京ICP证060456号 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved