




已阅读5页,还剩59页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
供热管道机器人技术实现项目设计方案1简介在我国北方供热管道大量存在,16个地区的调查资料显示,运行时间在15年以上的供热管道占26%。由于建设时间较早,这部分管道大部分采用管沟和架空敷设方式,技术落后,再加上运行时间长,维护管理不善,问题尤其突出。管沟敷设供热管道长度占34.3%。管沟防水质量差,地下水和地表水渗漏使得管道泡水,热损失严重,也是较大问题之一。为了解决管道运行时出现裂缝而导致无法向居民提供供热问题,需要对管道进行检测,测评,得到管道的运行状态。供热管道都是金属制成,金属可能腐蚀,特别是在链接的部位,而这些裂缝是用视觉很难发现的。我们要得到金属内部状态,我们必须采用X射线探伤。由于X射线对人员身体伤害比较大,并且鉴于某些管道较小,人员在里面很难活动,我们针对这些问题设计出了我们用于管道裂缝检测的机器人。我们小组讨论最后得出了一套机器人设计的解决方案,并在郑旭学长帮助把机器人本体搭建好了,通过测试,基本能达到预期的效果。2系统设计方案站在设计者角度,管道检测机器人可以分为机械本体和控制系统两大部分,本文主要研究管道机器人的控制系统设计。本节首先对目标机器人的机械结构作简单介绍,然后详细讨论控制系统的三层结构模型,并根据模块功能的相关性,对目标控制系统进行模块划分。2.1目标机械系统简介本文针对一种轮式管道机器人进行控制系统设计,图2.1是它的机械结构原理图。从图中可以看出这种管道机器人主要由放射源定位器、横杆、摆杆、底座和车轮等部分组成,其中车轮和底座构成了管道机器人的移动载体,而放射源定位器、横杆和摆杆等部件构成了针对焊缝探伤作业的车载平台,机器人各组成部分的功能如下:(1)横杆。目标机器人使用横杆安装放射源专用设备、全景摄像头和超声波传感器等负载,在车体端正的情况下,安装在横杆上的各个设备沿管道径向的位置保持一致。横杆通过一种滑动机构连接在摆杆上,它可以带动放射源专用设备沿摆杆轴向进行移动,移动过程中放射源专用设备与放射源定位器的相对位置保持恒定。图2.1 目标机器人的机械结构原理图(2)摆杆。从图2.2可以看出,摆杆通过旋转轴安装在目标机器人的底座上,它可以在垂直于管道中心轴的截平面内进行左右摆动,控制系统通过协调摆杆与横杆的运动来实现放射源中心定位功能。(3)放射源定位器。放射源定位器位于横杆的末端,起到标定放射源位置的作用。由于放射源操作有一定的危险性,在系统测试或者模拟作业时,一般不会接入放射源。另外,不同放射源专用设备的尺寸也不相同,直接对放射源设备进行定位难以满足通用性要求。因此,控制系统首先将放射源定位器当作放射源,将其移动到焊接面,并进行中心定位,然后再根据定位器与放射源的相对位置进行位置补偿,由于它们都安装在横杆上,沿管道径向的位置相同,因此只要根据它们沿管道轴向的位置差进行位置补偿,即可将放射源定位到焊接面的中心位置。由于现阶段还不会接入放射源专用设备,下文提到的放射源中心定位即为对定位器的操作。(4)底座和车轮。由车轮和底座构成的机器人移动载体负责拖动车载平台进入管道进行焊缝探伤作业。机器人的底座可以用于安装各种负载,包括多块电路板、步进电机、直流电机和车载电源等。目标机器人的底座两侧装有四个车轮,在图2.2中,右侧的两个车轮为主动轮,而左侧的两个车轮为从动轮。2.2控制系统的三层结构模型为了满足扩展性要求,本文采用模块化设计方法,将控制系统分成多个独立的功能模块,根据模块功能的特点,又将这些功能模块归并到三个独立的工作层中,这三个工作层从高到低依次为人机接口层、通讯层和功能层,每个工作层都独立为一个子系统,不同工作层之间只能通过网络互连来实现信息交换。这三个工作层分别有如下特点:(1)人机接口层人机接口层(Human Machine Interface,HMI)是控制系统的最顶层,位于管道外部。HMI层是控制系统提供给操作者的交互接口,通过该接口,操作者可以对管道机器人进行运动控制和参数设置,同时获取机器人的各种反馈信息。(2)通讯层通讯层是控制系统的中间层,位于管道机器人的移动载体中。通讯层提供了丰富的通讯接口,具有大数据量处理能力,其作用包括两个方面,一是作为接口层与功能层的信息桥梁,实现指令路由功能;二是为控制系统提供大数据量外围模块的接口(比如视频语音模块),提高了控制系统的扩展性。(3)功能层功能层是控制系统的最底层,位于管道机器人的移动载体中。功能层是控制系统的核心,实现了管道机器人的全部运动控制任务,包括对各类电机的直接控制、多种传感器信号的采集与处理、放射源中心定位策略与自平衡策略的实现等。目标控制系统的三层结构模型如图2.3所示,从图中可以看出,人机接口层与通讯层通过无线AP相连,无线通讯具有灵活方便的优点,但考虑到某些工程环境(比如金属弯管道)对无线信号的屏蔽作用比较明显,本文在设计时,为目标控制系统预留了有线以太网通讯接口。通讯层与功能层借助RS485总线实现通讯,对于特定的管道机器人,通讯层主控设备只有一个,而功能层主控板可以通过RS485总线进行扩展。通讯层与功能层都位于机器人的移动载体中,区分通讯层与功能层的主要目的是实现性能与成本的平衡。尽管本文没有针对机器人视觉模块作研究,但是控制系统要求具备视觉模块接口,以满足扩展性要求。视频业务涉及大数据量的处理,对主控设备的性能要求也较高,而绝大多数外围模块是低速设备,如果将所有外围模块统一接入高速主控设备,那么系统需要扩展多个高速主控设备才能满足接口数量的要求,这不仅增加了成本,同时也造成硬件资源浪费。因此,本文只在通讯层使用一个高速主控设备,以满足大数据量业务需求,而将各种低速设备统一接入功能层,通过扩展低成本的功能层主控板来满足接口数量的需求。3 管道检测机器人控制系统硬件设计硬件是软件算法运行的平台,其设计质量直接影响了控制系统的稳定性和可靠性。本章围绕管道机器人控制系统展开硬件设计,首先对目标控制系统的硬件组成进行分析,然后重点讨论功能层主控板的PCB设计过程,最后对控制系统主要外围模块的工作原理和编程接口进行研究设计。3.1 管道检测机器人控制系统的硬件组成目标控制系统的设计工作围绕它的三层结构模型展开,在人机接口层,其硬件平台即为一台配备无线网卡的PC机;而在通讯层,硬件平台包括OK6410控制板和各个通讯模块;在功能层,其硬件模块包括主控板、电机模块和各种传感器模块等,其中功能层主控板PCB设计是硬件设计的主要任务。3.1.1 通讯层硬件组成根据控制系统的三层结构模型,通讯层位于人机接口层与功能层之间,负责指令流的处理与分配,对上需要支持高速稳定的以太网数据传输,对下需要支持稳定可靠的串口通讯。通讯层根据其工作需求,必须包括如下几个模块:(1)无线网卡。在目标控制系统中,HMI层与通讯层使用无线网络进行交互,为了满足传输距离与通讯速率的要求,本文选择了WIFI技术来组建无线局域网。(2)有线网卡。针对某些工程环境对无线信号屏蔽严重的情况,控制系统预留了有线以太网网卡接口。(3)串口通讯模块。目标控制系统使用RS485总线实现通讯层与功能层之间的指令交互,同时,借助RS485总线可以实现通讯层控制板与多块功能层主控板进行通讯,以满足控制系统扩展性的需求,通讯层控制板是该RS485网络的主设备,必须要支持稳定可靠的串口通讯。(4)控制板。控制板是通讯层的核心,其作用是将各个独立的通讯模块组合成一个有机整体,并负责各种数据的运算处理。通讯层作为数据交换的枢纽,为了保证数据处理的实时性和可靠性,通讯层主控板必须要具备较高的性能。本文选择了飞凌公司的OK6410开发板作为通讯层主控板,该控制板以Samsung S3C6410处理器为核心,包含丰富的外围模块和接口。S3C6410是三星公司推出的一款基于ARM11架构RISC微处理器,该芯片采用64/32位内部总线架构,包含大量高能性的硬件加速器和片内外设,工作频率高达667MHz,不仅具有较高的数字运算能力,在图形处理方面也具有十分出色的表现。OK6410控制板及其主要外围模块如图3.1所示。(a)OK6410控制板 (b)WIFI模块 (c)TTL-RS232模块 (d)RS232-RS485模块图3.1 OK6410主控板及其外围模块根据以上分析,本文针对通讯层设计了如图3.2所示的硬件组成结构。由于OK6410控制板装载WinCE操作系统,为了便于程序调试与人机交互,需要在通讯层接入LCD触摸屏模块。另外,从图3.2可以看出,OK6410主控板串口模块后面接有TTL-RS232转换模块和RS232-RS485转换模块,这是因为RS485总线采用的是EIA(Electronic Industries Association)制定的EIA-485电气标准,而OK6410板载串口模块使用的是TTL逻辑电平。工程上很少直接使用TTL电平进行串口通讯,为此飞凌公司针对OK6410开发板设计了一款如图3.1(c)所示的TTL-RS232转接板,该转接板使用两片MAXIM公司的MAX202E芯片,实现将3路TTL电平转为RS232标准电平。RS232电平再经过RS232-RS485转换模块,即可得到最终的RS485标准电平。图3.2 通讯层硬件组成框图3.1.2 功能层硬件组成根据控制系统三层结构模型,我们知道功能层实现了目标机器人运动控制的全部功能,针对机器人的运动特点,功能层需要包括如下几个模块:(1)两路步进电机。作为机器人本体的驱动装置,每一路步进电机驱动一个主动轮旋转,通过调节电机速度,实现机器人本体的运动控制。步进电机使用专用的电机驱动器进行驱动,可以通过改变脉冲频率调节其转速。(2)两路直流电机。为摆杆摆动和横杆滑动提供动力。直流电机通过直流电机驱动板驱动,可以通过PWM方式调节电机转速。(3)倾角传感器。通过A/D转换模块接入功能层主控板,测量机器人本体横向倾斜角、纵向爬坡角和摆杆倾角。(4)超声波传感器。通过捕获模块接入功能层主控板,是完成管道半径测量、放射源定位控制的关键设备。(5)电源模块。为步进电机、直流电机等大功率模块和各类控制板等小功率模块提供电压,大功率模块和小功率模块之间需要隔离,以保护主控板。(6)主控板。以上各个独立模块在主控板的控制下协同工作,为了适应不同的外围模块,主控板必须具备丰富的接口。功能层主控板需要与管道检测机器人的外围模块相匹配,市场上的通用电路板在接口种类和数量上很难满足这种特定的应用需求,这就要求功能层主控板必须独立设计,以在最大程度上适应目标机器人的工作特点。功能层主控板直接控制各个运动模块,其设计质量是管道检测机器人控制系统性能的决定性因素。根据以上需求,本文设计了如图3.3的所示的功能层硬件结构。图3.3 功能层硬件组成框图3.2 功能层主控芯片选型3.2.1 主控芯片选型要求功能层是管道机器人控制系统的核心,其主控芯片选型对控制系统的扩展性、稳定性和实用性等方面都有十分重要的影响。另外,不同芯片由于开发工具,支持情况不同,开发成本也有很大差别。主控芯片选型需要考虑如下几个因素:(1)接口丰富主控芯片通过各种接口实现对外围模块的控制,比如电机控制、传感器数据采集控制等。不同的工程应用需要不同的外围模块,接口数量足,种类全,控制系统就能接入更多的外围模块,满足更多的工程需求。功能层需要的接口主要包括如下几种:1)通讯接口根据控制系统的三层结构模型,功能层与通讯层使用RS485串行通讯接口进行指令交互。同时,采用RS485总线结构,控制系统可以接入多个功能层主控板以实现接口数量的扩充,因此主控芯片必须能够提供串口通讯支持。2)脉冲输出接口脉冲输出接口为步进电机和直流电机提供驱动信号,目标控制系统使用步进电机驱动管道机器人本体移动,使用直流电机驱动摆杆摆动和放射源沿摆杆的轴向运动。脉冲信号要求频率可调,以实现对步进电机转速的控制,同样,脉冲信号要求宽度可调,以实现对直流电机的转速控制。3)逻辑电平输出口许多外围模块可以通过逻辑电平控制它的工作模式。在目标控制系统中,主控芯片通过端口输出的高低电平实现步进电机与直流电机的转向控制、测距传感器的触发启动和多种外围模块的使能控制等功能。4)A/D接口通常处理器只能处理数字信号,为了实现对模拟外设的控制,需要通过A/D转换接口将外设输出模拟信号转化为数字信号,目标控制系统选用的倾角传感器就是一种将倾斜角度转化为连续电压输出的模拟设备。5)外部中断检测接口中断机制实现了系统主程序与外部事件的“并行”处理,借助中断机制,处理器能够在执行主程序的过程中,实时响应外围模块的中断请求,提高了处理器对并发事件的处理能力。目标控制系统使用中断方式实现超声波传感器的事件检测,超声波测距模块使用电平上升沿标志超声波发出时刻,使用电平下降沿标志超声波回声接收时刻,主控芯片在中断响应子程序中记录上升沿和下降沿发生时刻,由此计算出超声波传播时间,进而实现距离检测。 (2)低功耗实际工程应用对管道机器人稳定性要求很高。控制系统的电路模块一般封装于散热性不高的腔体中,高功耗的芯片发热量较大,容易造成系统高温,温度过高会影响集成电路的电性能,加速元件老化,降低系统的可靠性,因此在保证芯片效能的基础上,需要尽量选择更低功耗的主控芯片,在使用多块主控板的应用中,这一点尤为重要。(3)高处理能力处理器的处理能力对控制系统性能有很大的影响,高处理能力的处理器,能同时为更多的外围模块服务,能更快地响应外围模块的中断请求,能实现复杂度更高的运算,因此,提高主控芯片的处理能力,具有十分重要的意义。衡量处理器处理能力的指标主要有指令集、字长、指令周期等。(4)低成本主控芯片作为模块的核心,一般是电路板上价格最高的元件,在批量生产的情况下,降低主控芯片的成本具有较高的经济性。(5)方便高效的开发测试环境对于系统开发者还需要考虑单片机的开发工具、服务支持等因素,良好的开发测试环境有助于缩短开发周期,节约开发成本。3.2.2 MSP430F149芯片的特点根据上文的选型需求分析,本文最终选择了TI公司的MSP430F149单片机作为功能层主控芯片,该芯片由于其高性能、小体积、低成本的优点,在工业控制、电器仪表产品、网络通信设备等方面得到非常广泛的应用39,40。MSP430F149单片机具有如下几个方面特点:(1)超低功耗低功耗是MSP430系列单片机最显著的特征,MSP430F149可以支持一种活动模式(AM)和LPM0LPM4五种节电模式39。在活动模式下,MSP430F149耗电为250A/MIPS,而工作在节电模式时,其数据保持电流仅为0.1A,并且可使用中断方式将单片机从节电模式唤醒至活动模式,唤醒时间最多不超过6s,节电模式实现了低功耗与高速度的统一。(2)强大的处理能力MSP430F149是一种16位RISC单片机,单条指令执行通常只需要一个时钟周期,在外接8M晶振时,其指令执行速度最高可达8MIPS40。另外,MSP430F149内嵌高速硬件乘法器,可以支持硬件乘法、乘加运算,极大提高了单片机执行复杂数字信号处理算法的能力3941。(3)外围模块丰富MSP430F149具有丰富的片内模块,包括6组8位I/O端口、12位模数转换器ADC12、两路串口USART0和USART1、定时器A(Timer_A)、定时器B(Timer_B)、看门狗定时器、硬件乘法器等,各个模块可以独立工作,也可以组合作业,为各种工程问题提供了出色的单片解决方案42。(4)系统性能稳定MSP430F149为工业级芯片,可以在宽温度范围中稳定运行,具有很高的可靠性,所设计的产品适用于各种民用和工业环境4042。(5)良好的开发工具支持MSP430系列单片机都具有很好的开发工具支持,MSP430F149内部包含独立的可电擦写FLASH存储器,借助JTAG仿真器可以实现程序下载、程序运行控制、CPU状态读取、存储器数据读取等功能,其全部设计开发过程可以在同一个集成开发环境中完成39,43,本文使用的是IAR WorkBench V5.3。3.3 基于MSP430F149控制器的主控板设计主控板作为功能层的核心,负责控制步进电机、直流电机、超声波传感器和倾角传感器等多个外围模块的协同工作,其设计质量对控制系统性能有很大的影响。本节将会根据目标控制系统的设计需求,分模块详细分析基于MSP430F149微控制器的主控板的PCB设计过程。3.3.1 MSP430F149核心模块为了获得良好的工程应用表现,功能层主控板要求根据目标控制系统的工作特点进行定制。本文使用了两块功能层主控板,两块主控板硬件构成完全相同,根据模块功能的相关性,两块主控板负责不同的模块控制任务,目标控制系统的模块分配及功能需求如表3.1所示:表3.1 模块分配及其功能需求控制板一控制板二两路步进电机控制需求:两路可变频脉冲输出端口四路逻辑输出端口(两路使能控制、两路方向控制)两路直流电机控制需求:两路PWM输出端口四路逻辑控制端口(每两路控制一路直流电机方向)两路倾角传感器控制(横向倾斜角、纵向爬坡角)需求:两路模拟电压输入端口一路倾角传感器控制(摆杆倾斜角)需求:一路模拟电压输入端口与通讯层指令交互需求:RS485通讯模块与通讯层指令交互需求:RS485通讯模块通讯超时检测需求:定时器外部电源电量检测需求:一路模拟电压输入端口四路超声波传感器控制需求:四路中断输入端口定时器根据表3.1所示的功能分配,本文设计了如图3.4所示的MSP430F149引脚分配图。从图中可以看出该原理图主要分为三个部分:(1)MSP430F149引脚分配电路。该部分是图3.4的主体,单片机通过引脚实现自身的功能,为了最大程度地发挥MSP430F149的功能,应该充分利用芯片的引脚。从图中可以看出,除了单片机的P3端口专用于串口通讯,所有的I/O端口都已投入使用。MSP430F149引脚分配电路是整个电路设计的核心,本节其它模块的电路设计就是在此基础上进行的。(2)MSP430F149的晶振电路。晶振模块(Y1)从MSP430F149低速晶体振荡器(LFXT1)的XIN1、XOUT1引脚接入。LFXT1支持低频模式和高频模式,工作在低频模式时,可以直接接入32768Hz的晶振,工作在高频模式,需要在晶振接入引脚接入适当的电容,由于本文使用的是8MHz的高速晶体振荡器,因此晶振电路包含两个15pF的电容(C1和C2)。(3)电容滤波电路。在单片机的电源输入端和地之间接入0.1F的电容(C23)可以滤除高频干扰,保持单片机的供电电压稳定。图3.4 MSP430F149电路原理图3.3.2 电源模块主控板上需要5V和3.3V两种电源电压。整个控制系统由24V锂电池统一供电,24V电压经过电源转接板之后可以得到5V电压。电源转接板本身能够输出5V稳定的电压,但是它的输出电压需要经过转接板接口、传输线、控制板接口和开关后才能到达主控板,在电压传输过程中,由于线路缺陷、外界干扰等问题,最终电压可能出现波动,而一般IC器件对输入电压稳定性要求较高。针对这种问题,本文在主控板电源接口后面添加了如图3.5所示的滤波电路,从图中可以看出,该滤波电路由一个二极管和一对并联电容组成。二极管是为了防止电源正负极颠倒的情况,真正实现滤波功能的是并联二极管。在研究高频信号时,必须要考虑到电容原件的等效串联电感,当电信号超过某个频率时,电容元件的电感特性将超过电容特性,这个频率即为电容元件的特性频率。电容原件由于其特性频率的存在,低频滤波需要大电容,而高频滤波需要小电容,为了获得较宽的滤波频带,可以采用电容并联的方式,图中的0.1F和22F的电容可以分别滤除电路中的高频干扰和低频干扰。图3.5 5V电压输出电路由于电源转接板不具有3.3V电压输出电路,本文使用TPS7333Q低压差电源芯片为MSP430F149、MAX3232、MAX3485、74LVC245等IC元件提供3.3V电压,其电路设计如图3.6所示。图中,电容C4是滤波电容,它可以为TPS7333Q滤除输入端的高频干扰,而电容C3是充放电电容,可以在一定程度上保证TPS7333Q输出电压稳定。电阻R2和发光二级管D1起到输出电压检测的作用,可以根据发光二极管的亮灭判断TPS7333Q是否正常工作。图3.6 5V电压输出电路TPS7333Q芯片的关键参数如表3.2所示,从表中可以看出该芯片的电压输入范围较宽,最大可以提供500mA的输出电流。TPS7333Q的输出电压具有很高的精度,在输出电流为100mA时,其最大电压误差为35mV。另外,TPS7333Q还具备欠压复位功能,当系统上电或输出电压降到一定阈值时会自动从RST引脚输出低压复位信号,将RST引脚与单片机的复位引脚相连,可以将系统从由欠压引起的异常中恢复。表3.2 TPS7333Q的关键参数输入电压输出电压误差最大电流4.310V3.3V35mv(100mA)500mA3.3.3 RS485通讯模块功能层通过RS485总线与通讯层进行指令交互,其主控板必须具备RS485通讯模块。MSP430F149芯片中包含两路串口模块,输出都为TTL电平,通讯时必须使用合适的串口通信芯片将TTL电平转为EIA-RS-485电平,本文选用美信公司的MAX3485作为主控板的串口通讯芯片。MSP430F149的两路串口通信模块为USART0和USART1,本文将USART0模块用作RS485通信,电路设计如图3.7所示。图中RX0、TX0是USART0的接收和发送引脚,DE为MAX3485的使能信号,因为二线制的RS485通信采用了半双工通信方式,接收和发送不能同时进行,当DE为高电平时使能发送,为低电平时使能接收。右端的RS485+、RS485-即为MAX3485芯片的差分信号输出引脚。对于RS485通讯中的差分信号,它的共模电压范围为-7+12V,当通讯线路中的共模电压超出这个范围时,通信可靠性就会大大降低,甚至有可能损坏接口。为了抑制共模干扰,可以使用上拉电阻将RS485+引脚嵌位至3.3V附近,使用下拉电阻将RS485-嵌位至0V附近。图中120的电阻R12为终端电阻,在网络接口处,由于特性阻抗发生变化,通信信号会出现反射,即发生回波干扰,因此,在长距离通讯时,需要在RS485总线的两个终端设备上接入终端电阻,终端的电阻的阻值与线路的特性阻抗相当,对回波干扰有很好的抑制作用。图3.7 RS485电路原理图3.3.4 RS232通讯模块目标控制系统不需要直接使用RS232通讯接口,但是出于以下两方面考虑,本文在功能层主控板中设计了RS232通讯模块:(1)扩展性需求。课题要求控制系统具有良好的扩展性,这就要求控制系统能接入不同类型的外围模块。目前,市场上许多传感器都是使用RS232接口来传输采集的数据,在功能层主控板中添加RS232通讯模块,就能够让其支持更多的外围模块,以满足更多的工程需求。(2)用于系统调试。系统开发阶段需要进行模块测试,功能层不直接支持触摸屏、键盘鼠标等人机交互设备,其测试过程往往比较麻烦。针对这一问题,本文将MSP430F149芯片的USART1模块设计成调试串口,借助调试串口,用户可以选择需要测试的功能模块,并接收单片机反馈的测试信息。要实现RS232通讯,同样先必须把USART1模块的TTL电平转为EIA-RS-232标准电平。美信公司的MAX3232芯片可以完成3.3V TTL电平与EIA-RS-232电平的双向转换,本文设计了如图3.8所示的RS232通讯原理图。图中RX1、TX1分别为USART1模块的接收和发送引脚,使用的是TTL电平,而RX232、TX232为MAX3232的接收和发送引脚,使用的是EIA-RS-232标准电平。RS232支持全双工通讯,接收和发送可以同时进行。图3.8 RS232电路原理图3.3.5 逻辑I/O模块MSP430F149有6个逻辑I/O端口(P1P6),每个端口有8个引脚,其中P1和P2端口的16路引脚支持输入中断。逻辑I/O是单片机最基本的功能,在MSP430F149控制板中,逻辑I/O模块主要有以下几个功能:(1)步进电机的使能控制和方向控制(输出)(2)直流电机的使能控制和方向控制(输出)(3)超声波传感器的触发启动(输出)(4)倾角传感器的倾斜警报(输入)本文将MSP430F149的P1端口完全用于逻辑输入,P1端口具有外部中断检测功能,可以满足倾角传感器的倾斜警报检测需求。目标控制系统对输出端口的需求量较大,因此本文将P2和P5两个端口完全用于逻辑输出。但是,由于以下两个方面的原因,不能直接使用MSP430F149的I/O端口控制外围模块:(1)MSP430F149端口输出电压最大为3.3V,输入电压最大不允许超过3.8V,而本文涉及的外围模块都是使用5V电平,因此在单片机与外围模块进行逻辑交互前,必须先进行电平转换。(2)单片机对电压的稳定性要求很高,而很多外围模块的端口电压难以满足这一要求,尤其是电机驱动器这样的大功率模块,如果直接将其连到单片机端口,可能会影响单片机的寿命,甚至可能烧毁单片机。针对以上两点原因,本文设计了如图3.9所示的电平转接电路。该电路的核心模块是三态八总线收发器74LVC245和74HCT245,这两个芯片可以承受的输入电压范围较大,且能够输出稳定的电压,具有一定的隔离作用,能够高效地实现电压转换并起到保护单片机的作用。总线收发器74LVC245和74HCT245的关键参数如表3.3所示。表3.3 74LVC245和74HCT245的关键参数芯片电源电压Vcc(典型值)输入电压范围输出电压范围74LVC2452.73.6V(3.3V)05.5V0Vcc74HCT2354.55.5V(5.0V)05.5V0Vcc74LVC245芯片的作用是将外部输入的5V信号转换为单片机端口能够承受的3.3V信号。其电路设计如图3.9(a)所示,它的方向引脚DIR接低电平,信号传输方向为B端到A端。将74LVC245的A端接MSP430F149的P1端口,Vcc管脚接3.3V电源,根据表3.3可以知道,此时A端的高电平输出电压为3.3V,即为MSP430F149单片机的典型I/O电压。74LVC245的B端接外部输入信号,其典型输入电压范围为05.5V,可以承受外围模块输入的5V电压。74HCT245芯片的作用是将单片机端口输出的3.3V信号转换为与外围模块电压相匹配的5V信号。其电路设计如图3.9(b)所示,它的方向引脚DIR接高电平,信号传输方向为A端到B端。图3.9(b)对应P2端口的逻辑输出电路,P5端口的接法与P2端口完全一致。74HCT245的Vcc引脚接5V电源,将74HCT245芯片的A端与MSP430F149单片机的P2端口相连,接收P2端口的输出的3.3V电平,在它的B端可以得到5V电平输出,该电平可以用于各类电机和传感器模块的控制。(a)P1端口信号输入电路原理图(b)P2端口信号输出电路原理图图3.9 逻辑I/O模块电路原理图3.3.6 捕获模块超声波传感器根据超声波的传播时间计算出被测物体的距离,目标控制系统使用MPS430F149单片机的捕获模块接收超声波传感器的回响信号,并据此计算超声波的传播时间,以实现距离的测量。MSP430F149的P4端口与定时器B功能复用,定时器B由一个16位计数器和7路比较/捕获通道组成。定时器B可以工作在比较模式、捕获模式或PWM输出模式,三种工作模式可以通过软件配置寄存器的方式进行切换。当定时器B工作在捕获模式时,不仅能获取外部事件的发生时间,还能锁定其发生时的高低电平。每个比较/捕获通道使用一个独立的捕获比较控制寄存器TBCCTLx进行控制,当TBCCTLx寄存器的CAP字段置位时,则对应的通道工作在捕获模式,这时,如果该通道对应的引脚上检测到设定的脉冲触发沿(上升沿、下降沿或任意跳变),则计数寄存器TBR中的值将被写入到捕获比较寄存器TBCCRx中。本文使用定时器B的捕获功能检测超声波传感器回响信号的发生时刻,与超声波发射时刻之差即为超声波传播时间。图3.10为捕获模块的设计原理图,MSP430F149单片机的P4.0P4.3端口对应捕获模块的通道0至通道3。MSP430F149的捕获模块只能接收3.3V电平输入,而超声波传感器输出的是5V TTL电平,因此本文使用74LVC245芯片作为两者的转接模块。如图3.10所示,超声波传感器的回响信号从PIN9PIN12输入,并触发对应通道的捕获中断,同时MSP430F149将此刻的计数值写入到寄存器TBCCRx中,那么就可以在中断函数中计算出超声波的传播时间。图3.10 捕获模块原理图3.3.7 脉冲产生模块控制板的脉冲产生模块用于步进电机和直流电机的运动控制,步进电机是脉冲驱动型器件,可以通过调节脉冲频率来实现步进电机转速控制,而直流电机也可以通过PWM方式调节其转速。MSP430F149单片机的定时器A和定时器B可以实现脉冲输出功能。对于定时器B,其每一个比较/捕获模块都包含一个独立的脉冲输出单元,除通道0外,每个输出单元都有8种工作模式,对应8种不同的脉冲输出类型。可以通过设置TBCCTx寄存器的OUTMODx字段选择对应的输出模式。从OUTMOD0到OUTMOD7分别对应输出、置位、翻转/置位、置位/复位、翻转、复位、翻转/置位、复位/置位八种模式。图3.11为通道1在八种模式下的输出实例。从图3.11可以看出,通道0的比较/捕获寄存器TBCCR0的取值决定了脉冲周期,可以通过改变TBCCR0的值调节输出脉冲的频率,进而实现步进电机的转速控制。而TBCCRx与TBCCR0的比值决定了输出脉冲的占空比,当TBCCR0取值固定时,可以通过改变TBCCRx的值调节输出脉冲的宽度,进而实现直流电机的转速控制。图3.11 通道1的8种输出模式由于MSP430F149的定时器模块输出的是3.3V TTL电平,而步进电机或直流电机的控制端口需要输入5V电平,因此本文使用74HCT245芯片实现脉冲发生电路的电平转换,其电路设计如图3.12所示。在3.3.6节中,本文将定时器B的前4个通道用作捕获模块,这里将另外3个通道用于脉冲输出。在图3.12中,74HCT245芯片的A6A8引脚接MSP430F149的P4.6P4.4端口,对应定时器B的通道6通道4,接收三路3.3V脉冲电平输入,那么在74HCT245的B6B8引脚对应地输出三路5V脉冲信号,从而实现三路电机的控制。图3.12 脉冲输出模块原理图对于定时器A,其工作原理与定时器B相同,只不过定时器A只有三个比较/捕获通道,本文将定时器A的三个通道全部用于脉冲输出。定时器A的输出引脚与P2.2P2.4端口功能复用,其设计原理图即为前文的图3.9(b)。3.3.8 电压跟随器和AD模块本文使用AD转换器结合电压跟随器来采集并处理外部模拟信号,目标控制系统需要处理的模拟信号主要包括三路倾角传感器的输出信号,对应管道机器人的倾斜角、爬坡角和摆杆倾角的测量任务。电路设计中经常碰到要处理模拟量的情况,为了能够让数字处理器处理模拟信号,就必须用到模数转换模块。MSP430F149单片机内嵌12位模数转换器ADC12,该模块能够处理的最大电压为3.3V,而倾角传感器最大输出电压为4.5V,因此外部模拟信号必须经过分压处理之后才能交由ADC12模块处理。但是,如果将外部信号直接连接至分压电路,可能会出现电压下降,造成测量偏差。因此,本文在外部输入信号和AD转换模块之间添加了电压跟随器模块,电压跟随器可以实现前后级电路的隔离,对于后级电路,电压跟随器相当于一个恒压源,而对于前级电路它相当于开路,本文设计的电压跟随器电路如图3.13所示。图3.13 电压跟随器模块原理图从图3.13可以看出,电压跟随电路的核心是LM358芯片,该芯片内部包含两路独立的运算放大器,这两路放大器具有高增益、可内部频率补偿的特点。图中的电容C22、C37、C38起到滤除高频干扰的作用,电阻R18和R19、R20和R21分别构成两组分压电路。由运算放大器构建电压跟随器的原理如图3.14所示。图中、和分别为运算放大器的同向端、反向端和输出端的电压,运算放大器具有如下输出特性:(3.1)在图3.14中,将运算放大器的反向端与输出端短接,那么与时刻保持相等,且不会超过电源电压,由于放大增益A趋向于无穷大,根据式3.1,与之差必然为0,那么与必然也保持时刻相等,即起到电压跟随作用。图3.14 由运放构建电压跟随器的原理图电压跟随器模块和分压电阻电路实现外部模拟信号的接收与分压,而模拟信号数字化的任务由MSP430F149单片机的ADC12模块来完成,ADC12模块的两个输入端口与图3.13中的AIN1和AIN2引脚相连。所有模数转换器都需要一个基准电压,其数字输出表示输入模拟量相对于这个基准电压的比率。MSP430F149单片机的ADC12模块内置参考电源,参考电压有6种,可编程选择,分别为和的组合,其中可以为(模拟电源正端)、(A/D转换器内部参考电源的输出正端)及(外部参考源的正输入端),而包括(模拟电源负端)和(A/D转换器参考电源负端内部或外部)两种,本文选择和作为正负参考电压,根据模块需求,本文将MSP430F149的引脚接电源电压(3.3V),而引脚接地。3.3.9 JTAG接口模块功能层主控板使用JTAG接口实现程序调试与下载,JTAG调试接口主要包括TDI、TDO、TCK、TMS四个引脚,其中TCK为测试时钟输入引脚,TDI、TDO分别为测试数据输入、输出引脚,TMS为测试模式选择引脚,对于目标控制系统,JTAG接口的这四个引脚分别与MSP430F149单片机的同名引脚相连,其电路设计如图3.15所示。图3.15 JTAG接口原理图3.4 主要外围模块及其编程接口3.4.1 步进电机模块目标控制系统使用两路步进电机驱动管道机器人移动,通过协调两路步进电机的转速,完成不同的动作。图3.16是典型的步进电机控制原理图。从图中可以看出,控制器输出的脉冲信号和方向信号,在经过步进电机驱动器转化放大之后,才能够驱动步进电机运动。步进电机驱动器主要由环形分配器和功率放大器两部分组成44,45,环形分配器负责把来自单片机的脉冲信号转化为环形脉冲,环形脉冲再经过功率放大器放大后,即可驱动步进电机旋转。此外,步进电机驱动器一般带有细分电路,即借助微步驱动技术更精确地控制步进电机转动。采用细分驱动技术可以大大提高步进电机的步矩分辨率,减小转矩波动,避免低频共振,同时也降低了运行噪声46。图3.16 步进电机驱动模型本系统使用的是常州安科特公司的23HS2430型两相混合式步进电机,配备DM542型细分型步进电机驱动器。DM542驱动器有6路控制端口,用以接收单片机的控制信号,这6路端口的名称和功能如表3.4所示。表3.4 DM542驱动器的控制端口引脚名称信号功能PLS+步进脉冲信号输入正端PLS-步进脉冲信号输入负端DIR+步进方向信号输入正端DIR-步进方向信号输入负端ENA+使能信号输入正端ENA-使能信号输入负端在使用中,将标号为“+”的引脚连接,构成共阳极接法,或者将标号为“-”的引脚接到一起,构成共阴极接法。本文采用的是共阳极接法,接线如图3.17所示,图中PLS-引脚用于接收单片机的脉冲信号,该引脚每收到一个脉冲,步进电机旋转一步,要求脉冲频率小于40000Hz(10000P/r)。DIR-用于接收单片机的方向信号,可以通过改变该引脚的高低电平实现步进电机的转向控制。ENA-是使能控制引脚,其为高电平时,使能打开,此时步进电机进入锁定状态,ENA-为低电平时,使能关闭,步进电机进入自由状态。从图中可以看出,DM542驱动器使用2050V直流电压源供电,驱动器的A+、A-、B+、B-分别接步进电机A、B两相绕组的正负极。图3.17 步进电机接线图控制系统要求模块功能内聚、低耦合,将步进电机的运动控制功能封装为一个统一的接口函数不仅能满足内聚性要求,也给后续运动控制算法的实现带来很大的方便。控制步进电机至少需要脉冲、方向、使能三个信号,接口函数必须包含这三方面的信息,另外由于要控制的步进电机不止一个,则要求在接口函数中能够指定电机ID。根据上述要求,本文设计了如下的步进电机接口函数原型:Void StepMotor(int ID, int ena, int dir, int speed)该函数的四个参数分别对应电机ID、使能开关、旋转方向和旋转速度。根据前三个参数可以直接确定单片机对应端口的逻辑电平,第四个参数需要转化为定时器模块的输出脉冲频率。可以通过DM542驱动器的拨码开关设定步进电机的步距角,本文将步距角设定为0.036,因此DM542驱动器每接收10000个脉冲,即可驱动步进电机旋转一圈。本文使用MSP430F149的端口P2.1、P2.2、P2.3控制ID为1的步进电机,使用P4.4、P4.5、P4.6三个端口控制ID为2的步进电机。StepMotor接口的函数实现如下图所示。图3.18 步进电机接口函数实现3.4.2 直流电机模块目标控制系统包含两路直流电机,分别负责摆杆的摆动和放射源沿摆杆的轴向移动。两路直流电机与倾角传感器、超声波传感器相互协作,可以完成管道半径测量和放射源中心定位等控制任务。直流电机具有启动转矩大、变速性能好、过载能力强的优点47。为了实现对直流电机开关、转向和转速的控制,比较常用的策略是用专用电机驱动器结合脉冲宽度调制方法47,48。本课题采用了如图3.19(a)所示的L298N电机驱动器驱动两路直流电机,该驱动器主要由恒压恒流桥式驱动芯片L298N、光耦隔离电路、二极管双H桥等部分组成。驱动器中方向控制引脚和使能引脚与单片机相连,接收单片机控制信号。光电耦合器可以隔离单片机与L298N控制芯片,起到保护单片机的作用48。L298N电机驱动器包含两路直流电机接口M1和M2,直流电机通过二极管构成的H桥续流电路与L298N芯片连接。 (a)L298N驱动器(b)L298N芯片图3.19 L298N驱动器L298N是ST公司生产的一款高性能电机驱动芯片,该芯片采用如图3.19(b)所示15脚Multiwatt封装49。L298N包含A、B两个通道的直流电机驱动电路,对于通道A,可以使用INPUT1、INPUT2、ENA三个引脚控制电机转动,对于通道B,可以使用INPUT3、INPUT4、ENB三个引脚控制电机转动。L298N驱动器控制逻辑如表3.5所示。表3.5 L298N芯片控制逻辑表电机EN AEN BINPUT1INPUT2INPUT3INPUT4状态M1110正向101反向0停止M2110正向101反向0停止工程中一般使用PWM方式控制直流电机的转速,即通过控制电机通断时间的比值,来调节直流电机的转动速度。在目标控制系统中,直流电机与步进电机接在不同的主控板上,本文使用第二块功能层控制板的端口P2.0、P2.1、P4.4控制第一路直流电机,使用P2.6、P2.7、P4.5控制第二路直流电机,其中P4.4、P4.5是脉冲输出端口。本文设计的直流电机接口函数的原型为:void DCMotor(int ID,int,ena,int dir,int speed)DCMotor的第一个参数为电机ID,可以取值1或2,分别用于选择第一路或者第二路直流电机;第二个参数控制直流电机的使能,1表示使能开,0表示使能关;第三个参数用于控制直流电机的转向,取值1或0,对应直流电机的正转或反转;第四个参数用于控制直流电机转速,取值为0100。DCMotor接口的函数体如下图所示:图3.20 直流电机接口函数实现3.4.3 超声波传感器模块目标控制系统中包含四个超声波传感器,负责管道半径测量、放射源初步定位、放射源三向定位等控制任务。超声波的振动频率高于普通声波,因此波长较短,不易发生衍射,它能够形成射线向前传播,具有很好的方向性50。由于超声波碰到分界面或杂质能够发生明显反射,它在工业、民用、国防等方面常用于距离检测。本文使用的超声波传感器如图3.21所示。图3.21 超声波传感器该超声波模块包含4个引脚,其中Vcc与GND之间接5V电源。Trig引脚是超声波传感器的触发控制端口,与单片机的逻辑输出端口相连,单片机拉低该引脚电平并保持10s以上,则会触发传感器发射8个40kHz的超声波脉冲。Echo引脚是超声波传感器的回响反馈端口,与单片机的逻辑输入端口相连,向单片机反馈超声波传感器的工作状态。常态下,Echo端口保持低电平,当传感器发射超声波之后,该引脚立即跳至高电平并保持,直至收到回声信号或者系统超时,才重新回到低电平。超声波传感器的工作时序如图3.22所示。图3.22 超声波传感器的工作时序图使用超声波进行测距,需要根据超声波传播的速度和时间计算出其传播距离,反射面到发射端的距离即为超声波传播距离的一半。在图3.22中,回响信号保持高电平的时间t即为超声波的传播时间,而超声波在空气中的传播速度v为340m/s,那么所测距离即为:(3.2)为了方便对超声波传感器进行控制,需要一个启动接口,本文针对超声波传感器设计的接口函数原型为:void DistanceMeasure(int ID)DistanceMeasure函数只有一个参数,用于选择对应ID号的超声波传感器,目标控制系统有四路超声波传感器,对应的ID参数分别为1、2、3、4。DistanceMeasure负责对外提供超声波传感器的启动接口,具体距离计算在定时器中断过程中实现。在目标控制系统中,M
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 算法歧视的法律规制研究
- 干旱区农田盐碱水淡化分离自动测控系统的设计与试验
- 娄彻链霉菌YC117防控烟草黑胫病及其作用机理研究
- 降雨空间分辨率对洪涝过程的影响模拟研究
- 我们的青春岁月写议论文(13篇)
- 状物作文我爱秋菊450字(10篇)
- 除夕250字作文8篇
- 小学生过端午节作文8篇
- 童话故事创作机智的灰姑娘7篇
- 看电影海底总动员的感想读后感(10篇)
- 合理低价法得分计算
- 关于涉农企业税收风险管理的实践和思考
- 国土空间规划 教学大纲.docx
- 05S502阀门井图集
- 轮扣式支架模板施工方案
- 基于PLC的打包机控制系统
- 双门通道控制(共20页)
- 儿童学习五线谱卡片打印版
- 图像的频域增强
- 瓦利安离子注入机工作原理
- 《数控加工技术说课》
评论
0/150
提交评论