基于ARM9的机器人项目驱动嵌入式系统平台设计
- 格式:doc
- 大小:34.50 KB
- 文档页数:10
基于ARM9和Linux的机器人控制系统设计引言现有智能机器人用直流电机作为驱动轮时一般都是用单片机或者高速的DSP等进行控制,而且同一机器人往往需用多个CPU来实现各自的功能,但随着对机器人的智能化要求越来越高,需要一种新的控制器(使用一个处理器)来满足机器人的各种行为要求,例如视频采集、无线通信。
本文介绍的利用ARM实现的智能机器人平台,为智能机器人的开发提供了一个新方法。
平台采用的ARM9是基于三星公司的S3C2410处理器,主频高达200 MHz,支持蓝牙、触摸屏以及USBHOST接口,可以传输高速图像。
嵌入式Linux系统是一个多用户操作系统,它允许多个用户同时访问系统而不会造成用户之间的相互干扰。
另外,Linux系统还支持真正的多用户编程,一个用户可以创建多个进程,并使各个进程协同工作来满足用户的需求。
Linux的引入使其他智能模块都以设备的形式存在,只有在用户需要的时候才调用相关设备驱动从而使数据融合更方便,运行多任务也更稳定。
利用ARM和嵌人式Linux 作为智能机器人平台具有很大的优势,但在国内还未发现用该平台开发智能机器人的系统。
本设计完成了对该系统驱动的初步编写,并通过实际验证,取得了良好效果。
1 驱动电路及测速方法1.1 总体结构及驱动电路系统的整体结构框图。
本设计采用的LMD18200的真值表如表1所列。
通过ARM的I/0口(例如D口的DO~3)来控制电机的工作状态。
1.2 测速方法 ARM没有捕获外部脉冲的计数器,它的定时器是用来计算内部脉冲的。
码盘输出信号接外部中断处理程序(EINTl)并设置上沿触发变量,在中断中设置一全局变量i,用i++累加。
设置定时器timer0,使它O.36 s产生1次内部定时器中断。
当一个定时器周期完成时引发定时器中断,在timer0中断中读出i的值,即得到O.36 s内码盘转动所产生的脉冲数;接着将i清零,为下一个定时器周期捕获脉冲作准备。
基于ARM9平台的智能家居系统的设计及实现
智能家居系统是利用现代信息技术实现家庭设备互联,实现设
备间智能化联动,便于家庭生活的智能系统。
基于ARM9平台设计的
智能家居系统可以实现智能化家庭设备的远程控制、场景管理、安
防监控等功能,具有便捷、快速、高效的特点。
该系统设计核心为ARM9单片机,外部设备包括传感器、执行器、网络模块、液晶显示屏等。
系统从传感器获取温度、湿度、光照等
信息,经过处理后向执行器发出指令,控制家庭设备的开关、亮度
等参数。
同时,通过网络模块实现手机或电脑远程控制智能家居系统,方便用户在外部实现对家庭设备的监控和控制。
系统界面采用液晶显示屏显示,通过触摸屏实现对智能家居系
统的控制,包括场景设置、设备控制、安防监控等。
智能家居系统的应用场景包括家庭、商务办公场所等,可以实
现对环境的监测控制、能源管理、安全保护等功能,提高生活品质
和安全性。
在实现过程中需要注意系统的可靠性和安全性,包括网络通讯
加密、用户身份认证等方面,保证系统运行的稳定性和可靠性,为
用户提供更好的使用体验。
基于ARM的嵌入式移动机器人控制系统的设计嵌入式移动机器人控制系统是基于ARM架构设计的一种智能机器人控制系统,该系统具有灵活性高、性能稳定、功耗低等优点。
本文将从硬件设计和软件开发两个方面来详细介绍基于ARM的嵌入式移动机器人控制系统的设计。
硬件设计方面,嵌入式移动机器人控制系统的核心是基于ARM技术的处理器,可以选择低功耗、高性能的ARM Cortex-A9或Cortex-A53处理器。
处理器上可以集成多个内核,通过多核处理器的并行计算能力,可以提高机器人的实时性和响应速度。
此外,为了实现机器人的移动功能,还需要配备驱动电机的电机控制器和位置传感器,采用PWM控制技术来控制电机的转速和方向。
在软件开发方面,首先需要开发移动机器人的操作系统。
可以选择基于Linux的嵌入式操作系统,如Ubuntu的ARM版本或自主开发的实时操作系统。
操作系统可以负责机器人的任务管理和资源调度,提供良好的多任务处理能力。
其次,还需要设计适配机器人硬件的驱动程序,包括电机驱动、传感器驱动、通信驱动等。
驱动程序负责与硬件设备进行交互,将控制指令转化为相应的电信号或数据信号,并获取传感器的数据反馈。
最后,还需要进行机器人的应用开发,根据机器人的具体应用场景,开发相关的算法和控制逻辑,实现机器人的自主导航、路径规划、避障等功能。
在嵌入式移动机器人控制系统设计过程中,还需要考虑功耗管理、通信接口和外设模块等因素。
功耗管理是嵌入式系统设计中非常重要的一环,可以使用睡眠模式来降低功耗,还可以采用动态电压和频率调节的技术,根据系统负载的大小动态调整处理器的工作频率和电压。
通信接口方面,可以采用以太网、Wi-Fi、蓝牙等无线通信技术,实现机器人与外部设备的数据交换和控制指令的传输。
外设模块可以包括摄像头、激光雷达、超声波传感器等,通过外设模块可以实现机器人的感知和环境理解能力。
总之,基于ARM的嵌入式移动机器人控制系统的设计需要进行硬件设计和软件开发,并考虑功耗管理、通信接口和外设模块等因素。
基于ARM9的嵌入式Linux应用开发平台的分析与实现陈斌【摘要】随着经济的迅速发展以及科学技术水平的不断提高,IT行业取得了较大程度上的进步,为我国国民经济的发展以及人民生活水平的提高做出重要贡献。
尤其是近几年来,信息技术、网络技术飞速发展,IT领域不断发展与升级,在这种环境之下,嵌入式系统成为IT领域的重要焦点之一。
目前状况下,行业内存在着诸多的嵌入式系统,而在这些嵌入式系统当中,Linux最为受到青睐,这主要是因为Linux具有自身的强大优势,主要表现在三个方面,分别是元代码开放、功能强大一级级易于移植等。
就目前市场状况而言,ARM9系列的嵌入式微处理器已经成为嵌入式系统首选的处理器产品,本文就在此基础之上针对基于ARM9的嵌入式Linux应用开发平台的分析与实现进行有益探讨。
【期刊名称】《佳木斯职业学院学报》【年(卷),期】2014(000)005【总页数】2页(P1-2)【关键词】嵌入式系统 ARM9 Linux应用开发平台文件系统【作者】陈斌【作者单位】铁岭师范高等专科学校【正文语种】中文【中图分类】TP316.811.嵌入式系统模型图1显示的主要是嵌入式系统的模型结构:如果从物理层面的角度对其进行一定程度上的分析,可以将嵌入式计算系统理解成一个专用的电子系统,一般情况下,这一专用的电子系统都处于一个非电子系统环境之下,且这一系统环境具有一定的复杂性。
至于这两种系统的关系,可以对其进行一定程度的抽象化处理,即具有复杂性的非电子系统是嵌入式系统的外部环境,我们将其称为被嵌入的系统。
就一般状况而言,整个系统之中所包含的嵌入式系统为多个,同时,嵌入式系统能够与外界进行直接的通信。
对于嵌入式系统而言,它能够提供一个专门的服务给被嵌入系统,这一服务主要表现为两个方面:一方面,这一服务可以表现为对外界输入的响应;另一方面,这一服务也可以是对被嵌入系统或者与之相邻的嵌入式系统数据的响应。
就如现代机电控制系统,对于这一系统而言,它是一种分布式的系统,在这种系统环境之下,各个处理单元都是通过网络进行一定程度上的连接的。
基于ARM9的移动机器人上位机系统设计于洋,张晓东,陈亮(沈阳理工大学信息科学与工程学院,辽宁沈阳110159)摘要:本文介绍了一种基于ARM9的移动机器人上位机系统的设计。
该系统的硬件平台以Samsung公司的处理器S3C2440为核心,扩展256MB Nand Flash、2MB Nor Flash、64MB SDRAM等,软件平台为嵌入式Linux操作系统,界面与功能设计采用基于Linux系统的Qt/Embedded。
该系统的软硬件都是针对具体的特定的应用而专门设计的。
实验证明该系统稳定而可靠,并具有低功耗、体积小和集成度高等优点。
关键词:上位机系统;低功耗;S3C2440;Linux;Qt/EmbeddedThe Design of PC System for Mobile Robot Based on ARM9Yu Yang, Zhang Xiaodong ,Chen Liang,(Faculty of Information Science and Engineering ,Shenyang Ligong University,Shenyang ,110159,China) Abstract:This paper introduces a design of PC system for mobile robot based on ARM9.The hardware platform is S3C2440 from Samsung company as processor core, expanding 256MB Nand Flash、2MB Nor Flash、64MB SDRAM , etc. The software platform is embedded Linux operating system, and the design of the interface and the function of the system is based on Qt/Embedded of Linux. The software and hardware of the system are specially designed for concrete and given application. The experiments’ results show the system is stable and reliable, with low-power, tiny-volume,high integration, and so on..Keyword: PC system; low-power; S3C2440; Linux; Qt/Embedded0引言移动机器人上位机系统相当于机器人的“大脑”,是移动机器人智能性得以体现的物理基础。
The University of South China嵌入式系统课程设计题目基于ARM 嵌入式系统的拟人机器人控制器的设计学院名称电气工程学院指导教师黄智伟教授班级电子071 班学号20074470114学生姓名王仁茂2010年11月30日摘要为满足低成本、高性能的要求, 提出在拟人机器人控制器的设计中引入基于ARM 处理器和RTO S (Real2timeO S) 的嵌入式系统。
使用ARM 9 处理器S3C2410 和RT2Linux构建小型拟人机器人控制器的系统架构, 以拟人机器人的行走控制为例, 从硬件和软件上介绍了控制器的实现方法。
硬件选用高集成度的嵌入式处理器并采用模块化设计; 软件开发中使用Petri 网建模并利用Linux 良好的驱动程序框架,降低了开发难度, 提高了系统的可扩展性。
最后给出了在机器人避障中的应用, 验证了控制器方案的可行性, 为拟人机器人的进一步研究提供了平台。
关键词: 拟人机器人; 舵机; 嵌入式系统; Petri 网; 设备驱动。
AbstractA low cost, high performance humanoid robot controller was developed based on the ARM processor and the RTOS( real2time OS). The controller system architecture consists of aS3C2410 chip with the ARM 9 co re running RT2Linux. The implementation including hardware and software is illustrated by a robot walking example. The hardware platform uses a modular design with a highly inter grated embedded CPU.A Petri net is used to model the control flow. The software is based on the Linux device driver frame with simplifies the system and improves the expansibility. The control system successfully enabled the robot to evade obstacles and provides a platform for further development of humanoid robots.Key words: humanoid robot; servo; embedded system; Petri net; device driver;目录1.设计简介 (4)1. 1 嵌入式系统简介 (4)1. 2 拟人机器人简介 (5)1. 3 嵌入式系统设计简介 (7)2.拟人机器人系统架构 (10)2. 1 拟人机器人机械结构设计 (10)2. 2拟人机器人控制器硬件设计 (11)2. 3 拟人机器人控制器软件设计 (13)3 拟人机器人步行控制方案 (14)4 应用实例 (18)5 心得与体会 (19)6参考文献 (20)1 设计简介1.1嵌入式简介根据国际电气和电子工程师协会(IEEE)的定义,嵌入式系统是“控制、监视或者辅助设备、机器和车间运行的装置”,原文为devices used to control,monitor,or assist the operation of equipment,machinery or plants.目前,国内普遍认同的定义是:以应用为中心,以计算机技术为基础,软硬件可裁剪,适应应用系统对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。
基于ARM9的机器人项目驱动嵌入式系统平台设计摘要:随着嵌入式技术的发展,嵌入式系统将更广泛地应用于人类生活的方方面面。
本文主要详细介绍了机器人项目驱动的嵌入式系统软硬件设计方案。
项目开发程序是运行在硬件评估板和机器人小车上,既可用于软硬件协同验证也可以用于完成特定的项目。
使学生和开发人员可以通过实验程序很快的了解ARM9的各硬件模块的编程。
关键词:嵌入式系统ARM9 设计方案项目驱动随着信息化技术的发展,嵌入式系统已经成为当前IT产业界一个非常热门的话题。
因其高可靠性、低成本、高效、丰富的代码以及应用程序可扩展性、可移植性等一系列优点,目前已越来越成为工业系统和民用系统的主力军,尤其在信息化产品中,越来越多地应用到嵌入式系统的概念。
嵌入式系统主要由嵌入式处理器、相关支撑硬件和嵌入式软件系统组成,它是集软硬件于一体的可独立工作的“器件”。
嵌入式处理器主要由一个单片机或微控制器(MCU)组成。
相关支撑硬件包括显示卡、存储介质(ROM和RAM等)、通讯设备、IC卡或信用卡的读取设备等。
嵌入式系统有别于一般的计算机处理系统,它不具备像硬盘那样大容量的存储介质,而大多使用闪存作为存储介质。
嵌入式软件包括与硬件相关的底层软件、操作系统、图形界面、通讯协议、数据库系统、标准化浏览器和应用软件等。
总体看来,嵌入式系统具有便利灵活、性能价格比高、嵌入性强等特点,可以嵌入到现有任何信息家电和工业控制系统中。
从软件角度来看,嵌入式系统具有不可修改性、系统所需配置要求较低、系统专业性和实时性较强等特点。
1 嵌入式系统开发1.1 嵌入式系统的开发模型由嵌入式系统的组成可以看出,一个完整的嵌入式系统的开发一般分以下几个步骤:(1)硬件平台的设计。
(2)BSP的开发和调试。
(3)嵌入式操作系统的裁剪。
(4)嵌入式操作系统内核的配置和编译。
(5)文件系统的建立。
(6)文件系统的建立。
(7)系统下载和脱机运行。
1.2 嵌入式系统的开发流程嵌入式系统的开发通常采用“宿主机/目标机”方式。
首先,利用宿主机上丰富的资源及良好的开发环境开发和仿真调试目标机上的软件。
然后通过串行口或网络将交叉编译生成的目标代码传输并装载到目标机上,并用交叉调试器在监控程序或实时内核/操作系统的支持下进行实时分析和调度。
最后,目标机在特定的环境下运行。
嵌入式系统开发流程图如图1所示。
2 机器人项目驱动的嵌入式平台2.1 平台概述最近几年,在我国大学,机器人作为机械电子学、计算机技术、人工智能等的典型载体被广泛地用来作为工科本科生的讲授课程之一;在中学,模型机器人则逐渐成为素质教育,技能实践的选题之一,各种机器人比赛正蓬勃发展。
机器人技术大踏步向前发展,由于成本、功耗、功能的不断扩展、运行环境的不可预知性等因素起了极大的负面影响,制约了机器人技术的发展。
基于嵌入式系统的机器人控制器以其功耗低、体积小、集成度高、可靠性强等无可比拟的优势,为机器人技术的发展提供了广阔的前景。
本设计平台以S3C2440A ARM9应用处理器为核心,开发和设计一款开放式的机器人控制系统,它包括机器人主控系统、机器人传感器系统、机器人执行系统、上层编程软件系统,其工作过程如图2所示。
机器人上层编程软件系统编写机器人的应用控制程序,通过仿真器、UART 或USB 把应用程序下载到机器人主控系统中,根据机器人传感器系统采集的数据对机器人执行系统进行控制,从而实现机器人的执行功能。
2.2p机器人传感器系统起到了环境数据采集及处理的作用,它把处理的数据传给机器人控器系统。
它有模拟量传感器系统和数字量传感器系统组成。
(1)模拟量传感器系统。
模拟量传感器系统包括:红外测距、灰度、接近开关、温度传感器等。
(2)数字量传感器系统。
数字量传感器系统包括:模拟量传感器扩展模块、电子罗盘、光电传感器扩展模块等。
其组成包括:MCU、模拟量传感器、I2C通讯接口等,实现数据采集、数据处理和数据传输的功能。
2.4 机器人执行系统机器人的所有动作均由起执行系统完成,对于小型机器人来说,它的执行系统一般由直流电机驱动机械传动机构来完成动作。
本平台主要设计轮式机器人的执行系统,完成前进、后退、左转弯、右转弯等基本功能。
机器人本体设计包括传感器的位置安装、着地点的位置、重心位置等的设计;电机选择控制精度较高的步进电机;轮子驱动采用四轮驱动的方式。
3 硬件设计方案根据上述描述,Microbot2440的硬件设计方案如图4所示。
主要由5个部分组成:主控器、电源子系统、执行子系统、传感子系统和通信子系统。
其中通信子系统用于连接外围通信模块,如Zigbee短距离通信模块等。
其中CPU采用的是Samsung公司的S3C2440A型ARM9处理器。
这款处理器为手持设备和一般类型应用提供了低价格、低功耗、高性能小型微控制器的解决方案。
为了降低整体系统成本,S3C2440A提供了一下丰富的内部设备,采用了ARM920T的内核,0.13um的CMOS标准宏单元和存储器单元。
其低功耗,简单,优雅,且全静态设计特别适合于对成本和功率敏感型的应用。
它采用了新的总线架构Advanced Micro controller Bus Architecture (AMBA)。
S3C2440A的杰出的特点是其核心处理器(CPU),是一个由Advanced RISC Machines有限公司设计的16/32位ARM920T 的RISC 处理器。
ARM920T实现了MMU, AMBA BUS和Harvard高速缓冲体系结构构。
这一结构具有独立的16KB指令Cache 和16KB数据Cache。
每个都是由具有8字长的行组成。
通过提供一套完整的通用系统外设,S3C2440A减少整体系统成本和无需配置额外的组件。
4 软件设计方案软件设计主要由三部分构成:交叉开发工具、板载软件和项目开发程序。
交叉开发工具为PC机软件,用户通过ARM Developer Suite(ADS)集成开发平台在PC机上进行嵌入式软件的开发,然后通过JTAG编程器写入到硬件评估板中运行。
板载软件即固化在评估板的Flash存储器中的程序,包括Bootloader和Linux,有了操作系统,开发人员不需要了解硬件就可以编写应用程序。
项目开发程序是运行在硬件评估板和机器人小车上,即可用于软硬件协同验证也可以用于完成特定的项目。
学生和开发人员可以通过实验程序很快的了解ARM9的各硬件模块的编程。
4.1 交叉开发工具交叉开发工具是提供给用户在PC机上开发ARM9嵌入式软件的工具,Microbot 2440教学实验平台为用户提供了ARM Developer Suite(ADS)集成开发平台和JTAG编程器,可以帮助开发者进行高效的软件开发。
(1)ARM Developer Suite(ADS)集成开发平台。
基于ARM的集成软件开发平台ARM Developer Suite(ADS)集成开发平台)对于工程研发人员来说是一个功能强大的开发工具。
在EWARM环境下可以使用C/C++和汇编语言方便地开发嵌入式应用程序。
比较其他的ARM开发环境,ADS集成开发平台具有入门容易、使用方便和代码紧凑等特点。
其主要功能包括:①可编译生成ARM平台的机器码。
②工程管理功能。
③代码编辑功能。
④对目标硬件编程功能。
图5为ARM Developer Suite(ADS)的模块图。
以工程管理模块为核心,负责管理一个用户工程的源文件、工程设置等信息,同时根据IDE图形界面的菜单、工具栏、热键事件来进行相应的操作,例如编译工程、下载、信息输出、文件操作等。
(2)JTAG编程器。
Microbot2440教学实验平台使用的S3C2440也遵循了IEEE 1149.1,在其芯片中设计了测试访问接口和边界扫描链。
利用这一特点,设计了JTAG编程器,它可以用于对评估板上Flash存储器进行编程。
编程器由软硬件两部分构成:PC机高端软件和JTAG编程线。
JTAG编程线可以使PC机通过并行口来连接S3C2440A的TAP信号线,达到直接控制处理器的边界扫描链,进而控制外部总线来对Flash存储器编程。
4.2 板载软件(1)引导程序。
引导程序是固化在Flash中,在CPU上电启动时首先执行的程序,它负责进行系统初始化的工作,还可以用来引导其它的程序。
Microbot2440教学实验平台提供了两个引导程序:bootFlash和U-Boot。
前者负责从Flash上电启动后初始化系统,后者是一个二级引导程序,由bootFlash引导,它可以进而实现对Flash编程、通过以太网下载程序、引导Linux等功能。
(2)ARM Linux 2.4.27.ARM Linux 2.4.27是标准Linux内核的ARM平台版,Microbot2440平台在提供给用户之前已经将其固化在评估板的Flash存储器中。
开发者和学习者可以通过它熟悉嵌入式Linux编程,不需要有很高的硬件知识。
开发人员只需要在操作系统和驱动程序之上开发应用软件,不需要了解底层硬件的机制。
5 结语后PC时代是一个真实的阶段,而且是一个可以预测的时代。
嵌入式系统就是与这一时代紧密相关的产物,它将拉近人与计算机的距离,形成一个人机和谐的工作与生活环境。
从某一个角度来看,嵌入式系统可应用于人类工作与生活的各个领域,具有极其广阔的应用前景。
嵌入式系统在传统的工业控制和商业管理领域已经具有广泛的应用空间,如智能工控设备、POS/ATM机、IC卡等;在家庭领域更具有广泛的应用潜力,如机顶盒、数字电视、WebTV、网络冰箱、网络空调等众多消费类和医疗保健类电子设备等;此外还有在多媒体手机、袖珍电脑、掌上电脑、车载导航器等方面应用,将极大地推动嵌入式技术深入到生活和工作的方方面面。
它在娱乐、军事方面的应用潜力也是巨大的,而且是有目共睹的。
面对全球嵌入式系统工业化的潮流,适应我国加速知识创新和建立面向21世纪知识经济的需要,必须加强高等院校嵌入式系统的教学,培养高层次、实用型、复合型、国际化的嵌入式系统应用人才,使我国嵌入式系统应用水平获得跨越式发展。
参考文献[1] 李善平,刘文峰,王焕龙,等.Linux与嵌入式系统[M].清华大学出版社,2002:133-135,146-153.[2] 吕京建,肖海桥.ICI向二十一世纪的嵌入式系统综述[EB/OL]./.[3] 常薇,张明武.硬件与电子技术课程网上虚拟实验教学模式研究[J].中山大学学报论丛,2005(3):80-82.[4] 王仁之,王雷,等.单片机应用系统抗干扰技术[M].北京:北京航空航天大学出版社.[5] 慕春棣,主编.嵌入式系统的构建[M].清华大学出版社,2004.[6] 陈莉君.深入分析Linux内核源代码[M].人民邮电出版社,2002.。