安防人上中安网!

关注我们  

安防网 >> 工程方案 >> 其他

基于LPC2104的爬壁机器人控制系统设计(一)

2009-07-31 18:42:22 来源:安检排爆网 作者:Boxer 责任编辑: boxer158 收藏本文
近年来,随着微机电系统(MEMS)技术的发展和微小型移动机器人应用领域的不断拓展,出现了这样一种需求,即用微型爬壁机器人代替人工进行各种极限作业

  接触传感器由外层管和内部超弹性线构成,内外两层通过硅管隔开。当内线和外层接触时,开关关闭。通过这种方法,接触传感器向LPC2104发送信号,借此来控制吸盘的方向。


  从压力传感器来模拟信号经A/D转换器转换成数字信号,LPC2104通过压力传感器来的信号来判断吸盘是否安全的吸附在墙壁上。


  LPC2104还可以通过串口RS232和上位机进行通信。


  3控制系统软件设计


  微型爬壁机器人控制系统软件选用嵌入式实时多任务操作系统μC/OS-II。它是一个源代码公开、可移植、可固化、可裁剪、占先式的实时多任务操作系统。其绝大部分源码是用ANSIC写的,移植方便,且运行稳定可靠。目前,它已经在几十种从8位到64位的微处理器、微控制器上实现了成功的移植。下面首先介绍μC/OS-II在LPC2104上的移植过程,然后介绍微型爬壁机器人控制软件的设计。


  3.1μC/OS-II在LPC2104上的移植


  移植μC/OS-II,主要包括:设置堆栈的增长方面,声明3个宏(开中断、关中断和任务切换),声明10个与编译器相关的数据类型;用C语言编写6个与操作系统相关的函数(任务堆栈初始化函数和5个钩子函数);用汇编语言编写4个与处理器相关的函数。


  用汇编语言编写的4个与处理器相关的函数如下:


  ①OSStartHighRdy()用于在调度中使最高优先级的任务处于就绪态并开始执行;


  ②OSCtxSw()完成任务级的上下文切换;


  ③OSIntCtxSw()完成中断级任务切换,其过程与OSCtxSw()类似,只是在执行中断服务子程序后可能使更高优先级的任务处于就绪态;


  ④OSTickISR()是系统节拍中断服务子程序。


  3.1.1OS_CUP.H的移植


  μC/OS-II不使用C语言中的short、int、long等数据类型的定义,因为它们与处理器类型有关,隐含着不可移值性,所以代之以移值性强的整数数据类型,这样,既直观又可移值。


  在μC/OS-II中,使用OS_ENTER_CRITICAL()和OS_EXIT_CRITICAL()开中断和关中断来保护临界段代码。ARM处理器核的用户模式和执行Thumb代码时,不能改变处理器的开中断位I。为了兼容各种模式,使用软中断指令SWI使处理器进入管理模式和ARM指令状态,即使用SWI0x02关中断,使用SWI0x03开中断。


  ΜC/OS-II使用结构常量OS_STK_GROWTH指定堆栈的增长方式,0表示堆栈从低地址往高地址增长,1表示堆栈从高地址往低地址增长。虽然ARM处理器核对于两种方式支持,但ADS的C语言编译器仅支持一种方式,即从高地址往低地址增长,并且必须是满递减堆栈,所以OS_STK_GROWTH的值为1。以上内容在文件OS_CPU.h中做如下定义。


  TypedefunsignedcharBOOLEAN;/*布尔变量*/


  TypedefunsignedcharINT8U;/*无符号8位整型变量*/


  TypedefsignedcharINT8S;/*有符号8位整型变量*/


  TypedefunsignedshortINT16U;/*无符号16位整型变量*/


  TypedefsignedshortINT16S;/*有符号16位整型变量*/


  TypedefunsignedintINT32U;/*无符号32位整型变量*/


  TypedefsignedintINT32S;/*有符号32位整型变量*/


  TypedeffloatFP32;/*单精度浮点数(32位长度)*/


  TypedefdoubleFP64;/*双精度浮点数(64位长度)*/


  TypedefINT32UOS_STK;/*堆栈是32位宽度*/


  _swi(0x02)voidOS_ENTER_CRITICAL(void);/*关中断*/


  _swi(0x03)voidOS_EXIT_CRITICAL(void);/*开中断*/


  #defineOS_STK_GROWTH1/*堆栈由高地址向低地址增长*/

【想第一时间了解安防行业的重磅新闻吗?请立即关注中安网官方微信(微信号:cpscomcn)——安防行业第一人气微信,万千精彩,千万不要错过!!!

中安网官方微信

关键词机器人控制
提示:试试"← →"实现快速翻页

网友评论

共有0条评论  点击查看全部>>

所有评论仅代表网友观点,与本站无关。

24小时阅读排行

本周阅读排行

订阅邮件
安防速递

每天三个要闻,知晓行业关键

E 周 刊

一周事,一朝知

Email: