基础机器人制作与编程,利用C语言进行机器人程序设计的入门级资粮
上传时间: 2013-06-28
上传用户:ZJX5201314
本文介绍了基于软PLC(Programmable Logic Controller,可编程控制器)的嵌入式技术起源和背景,综述了基于软PLC的嵌入式系统的关键技术和优点,最后介绍了其设计和实现的方法。 基于软PLC的嵌入式系统的研究与实现分为开发系统和运行系统(又称为虚拟机系统)。本文概述了开发系统,其运行于PC机的操作系统如Windows或者Linux等,为用户提供一个大众化的编程环境,它包含编辑器、编译器、连接器、调试器和通信接口几个部分。编辑界面友好,可以让用户方便的使用LD、ST和FBD三种语言编写程序,编译器和连接器将源程序文件编译和连接成虚拟机系统可执行的目标代码文件;分析了开发系统,其中详细描述了编译模块的编制过程,实现了将指令表语言转换为运行系统能够识别的C/C++指令的功能;详细地研究了梯形图转换为指令表语言,以及由指令表语言向梯形图语言的算法和数据结构。调试器借助于虚拟机运行系统提供的服务可完成对应用程序的调试纠错;讨论了uCLinux操作系统和编译调试技术,以及采用ModBus/TCP工业通信协议的通信接口用于开发系统和运行系统之间的通信。 另一方面,本文分析了虚拟机运行系统,它运行于安装了uCLinux的ARM7平台上,包括运行内核模块、系统管理模块和通信接口模块。由于uCLinux没有MMU和本身对实时性没有什么要求,而针对基于软PLC的嵌入式系统的研究与实现要求,本文在对其进行了uCLinux小型化研究的同时探讨了双内核实时性方案,解决了uCLinux实时性不足的问题。运行内核模块调度和执行应用程序并管理时钟。系统管理模块管理系统状态和内存。通信模块用于开发系统及I/O设备通信。在此基础上,对基于软PLC的嵌入式系统的进行了设计与实现,并通过试验将编译的目标代码传递到基于软PLC的嵌入式运行系统中,实现了控制功能,验证了生成目标代码的正确性和开发系统的可行性,实现了编辑界面友好,系统开放,性价比较高的软PLC嵌入式系统,达到了预期的目标,具有一定理论和应用价值。
上传时间: 2013-04-24
上传用户:jiiszha
十多年来,随着信息技术、电子技术和通讯技术的发展,嵌入式系统已经获得了空前的应用和发展。随着嵌入式应用系统功能复杂度的提高、对软件产品的非功能约束的特别关注以及由于市场的激烈竞争导致嵌入式软件推出周期的缩短,都使得嵌入式软件开发人员面临着严峻的危机和挑战。传统的结构化开发方法已经显得力不从心,于是嵌入式软件开发人员在软件开发中引入了目前较为流行的“面向对象方法(OO)”,.但是目前对该方法的应用还只是停留在传统的以编程为中心的嵌入式软件开发方法上,不能很好地保证软件复用和代码的重用,因此难以满足市场对嵌入式软件开发效率和开发质量的要求。 本课题的研究内容是应用面向对象方法的框架技术,对嵌入式系统领域的专有结构组件进行封装,创新性地提出了面向嵌入式系统领域的通用实时框架ARTIC(Abstract real-time contrO1)。ARTIC框架除了具有框架的共有优点一最大限度实现软件重用外,最突出的是具备以下两个特点: 1、功能和非功能的分离 在应用面向对象的技术时,传统的嵌入式软件开发方法关注的重点是软件结构和功能分解,、忽略了嵌入式环境下特殊的非功能性要求。为了在实现系统功能需求的同时,保证软件系统的非功能性需求的实现,ARTIC框架引入了面向方面的思想,、把系统的非功能性需求从功能模块中分离出来,为它们单独设计组件。开发人员在应用该框架进行嵌入式软件设计时,只需要关注功能需求的实现,对于实时性、调度等非功能需求的实现可以通过调用ARTIC提供的时间管理模型和任务调度模型直接实现。 2、基于状态机的主动对象设计模式 根据嵌入式系统通常由多个控制线程组成的特点,应用基于状态机的主动对象设计模式,把嵌入式软件系统构建成多个主动对象的缉合。相对于传统的面向对象方法,本文提出的主动对象的最大特点在于:它提供对事件队列、控制线程和表示主动对象动态行为状态机等的封装,并且该模式可以直接支持嵌入式系统的并行性。 ARTIC框架的应用能够帮助嵌入式软件的开发人员快速地开发出高质量的嵌入式软件,除此之外,因为它包含了一个微小的实时操作系统(RTOS) 报包装,在某些场合可以作为一个简易的RTOS使用。为了验证ARTIC的性能,本文将该框架应用于硬币搬送实时控制系统的开发设计,从该系统的应用中充分体现了ARTIC框架的优点。
上传时间: 2013-06-21
上传用户:cxl274287265
随着计算机网络与嵌入式控制技术的迅速发展,作为传统运输行业的铁路系统对此也有了新的要求,列车通信网络应运而生。经过多年的发展,国际电工委员会(IEC)为了规范列车通信网络,于1999年通过了IEC61375-1标准。该标准将列车通信网络分为两条总线:绞线式列车总线(WTB)和多功能车辆总线(MVB)。MVB是一个标准通信介质,为挂在其上的设备传输和交换数据。而多功能车辆总线控制器(MVBC)是MVB与MVB实际物理层之间的接口,其主要实现MVB数据链路层的功能。由于该项关键技术仍被国外公司垄断,因此开发具有自主知识产权的MVBC迫在眉睫。 鉴于上述原因,本文深入研究了IEC61375-1标准。根据MVBC的技术特点,本文提出了使用FPGA来实现其具体功能的方案。挂在MVB总线上的设备分为五类,他们的功能各不相同。而支持4类设备的MVBC具有设备状态、过程数据、消息数据通信和总线管理功能,并且兼容2类和3类设备。本文的目的就是用FPGA实现支持4类设备的MVBC。 本文采用自顶向下的设计方法。整个MVBC主要划分为:编码模块、译码模块、冗余控制模块、报文分析单元、通信存储控制器、主控制单元、地址逻辑模块。在整个开发流程中,使用Xilinx的ISE集成开发环境。使用Verilog HDL硬件描述语言对上述各个模块进行RTL级描述,并用Synplify Pro进行综合。最后,在ModelSim中对各个模块进行了布线后仿真和验证。 在实验室条件下,通过严格的仿真验证后,其结果证明了本文设计的模块达到了IEC61375-1标准的要求。因此,用FPGA实现MVBC这一方案具有可操作性。 关键词:列车通信网;多功能车辆总线;多功能车辆总线控制器;现场可编程门阵列
上传时间: 2013-07-18
上传用户:wxhwjf
51单片机上c语言编程手册,非常实用,我自己就是看着这个学习的
上传时间: 2013-05-18
上传用户:ikemada
ARM嵌入式系统C语言编程资料,欢迎各位朋友 下载
上传时间: 2013-06-06
上传用户:himbly
c++编程应用,大多都涉及MFC,希望对需要的人有好处。是比较好的资料。
上传时间: 2013-06-09
上传用户:brucewan
卷积码是广泛应用于卫星通信、无线通信等多种通信系统的信道编码方式。Viterbi算法是卷积码的最大似然译码算法,该算法译码性能好、速度快,并且硬件实现结构比较简单,是最佳的卷积码译码算法。随着可编程逻辑技术的不断发展,使用FPGA实现Viterbi译码器的设计方法逐渐成为主流。不同通信系统所选用的卷积码不同,因此设计可重配置的Viterbi译码器,使其能够满足多种通信系统的应用需求,具有很重要的现实意义。 本文设计了基于FPGA的高速Viterbi译码器。在对Viterbi译码算法深入研究的基础上,重点研究了Viterbi译码器核心组成模块的电路实现算法。本设计中分支度量计算模块采用只计算可能的分支度量值的方法,节省了资源;加比选模块使用全并行结构保证处理速度;幸存路径管理模块使用3指针偶算法的流水线结构,大大提高了译码速度。在Xilinx ISE8.2i环境下,用VHDL硬件描述语言编写程序,实现(2,1,7)卷积码的Viterbi译码器。在(2,1,7)卷积码译码器基础上,扩展了Viterbi译码器的通用性,使其能够对不同的卷积码译码。译码器根据不同的工作模式,可以对(2,1,7)、(2,1,9)、(3,1,7)和(3,1,9)四种广泛运用的卷积码译码,并且可以修改译码深度等改变译码器性能的参数。 本文用Simulink搭建编译码系统的通信链路,生成测试Viterbi译码器所需的软判决输入。使用ModelSim SE6.0对各种模式的译码器进行全面仿真验证,Xilinx ISE8.2i时序分析报告表明译码器布局布线后最高译码速度可达200MHz。在FPGA和DSP组成的硬件平台上进一步测试译码器,译码器运行稳定可靠。最后,使用Simulink产生的数据对本文设计的Viterbi译码器的译码性能进行了分析,仿真结果表明,在同等条件下,本文设计的Viterbi译码器与Simulink中的Viterbi译码器模块的译码性能相当。
上传时间: 2013-06-24
上传用户:myworkpost
现场可编程门阵列(FPGA,Field Programmable Gate Array)是可编程逻辑器件的一种,它的出现是随着微电子技术的发展,设计与制造集成电路的任务已不完全由半导体厂商来独立承担。系统设计师们更愿意自己设计专用集成电路(ASIC,Application Specific Integrated Circuit).芯片,而且希望ASIC的设计周期尽可能短,最好是在实验室里就能设计出合适的ASIC芯片,并且立即投入实际应用之中。现在,FPGA已广泛地运用于通信领域、消费类电子和车用电子。 本文中涉及的I/O端口模块是FPGA中最主要的几个大模块之一,它的主要作用是提供封装引脚到CLB之间的接口,将外部信号引入FPGA内部进行逻辑功能的实现并把结果输出给外部电路,并且根据需要可以进行配置来支持多种不同的接口标准。FPGA允许使用者通过不同编程来配置实现各种逻辑功能,在IO端口中它可以通过选择配置方式来兼容不同信号标准的I/O缓冲器电路。总体而言,可选的I/O资源的特性包括:IO标准的选择、输出驱动能力的编程控制、摆率选择、输入延迟和维持时间控制等。 本文是关于FPGA中多标准兼容可编程输入输出电路(Input/Output Block)的设计和实现,该课题是成都华微电子系统有限公司FPGA大项目中的一子项,目的为在更新的工艺水平上设计出能够兼容单端标准的I/O电路模块;同时针对以前设计的I/O模块不支持双端标准的缺点,要求新的电路模块中扩展出双端标准的部分。文中以低压双端差分标准(LVDS)为代表构建双端标准收发转换电路,与单端标准比较,LVDS具有很多优点: (1)LVDS传输的信号摆幅小,从而功耗低,一般差分线上电流不超过4mA,负载阻抗为100Ω。这一特征使它适合做并行数据传输。 (2)LVDS信号摆幅小,从而使得该结构可以在2.5V的低电压下工作。 (3)LVDS输入单端信号电压可以从0V到2.4V变化,单端信号摆幅为400mV,这样允许输入共模电压从0.2V到2.2V范围内变化,也就是说LVDS允许收发两端地电势有±1V的落差。 本文采用0.18μm1.8V/3.3V混合工艺,辅助Xilinx公司FPGA开发软件ISE,设计完成了可以用于Virtex系列各低端型号FPGA的IOB结构,它有灵活的可配置性和出色的适应能力,能支持大量的I/O标准,其中包括单端标准,也包括双端标准如LVDS等。它具有适应性的优点、可选的特性和考虑到被文件描述的硬件结构特征,这些特点可以改进和简化系统级的设计,为最终的产品设计和生产打下基础。设计中对包括20种IO标准在内的各电器参数按照用户手册描述进行仿真验证,性能参数已达到预期标准。
上传时间: 2013-05-15
上传用户:shawvi
现场可编程门阵列(FPGA)的发展已经有二十多年,从最初的1200门发展到了目前数百万门至上千万门的单片FPGA芯片。现在,FPGA已广泛地应用于通信、消费类电子和车用电子类等领域,但国内市场基本上是国外品牌的天下。 在高密度FPGA中,芯片上时钟分布质量变的越来越重要,时钟延迟和时钟偏差已成为影响系统性能的重要因素。目前,为了消除FPGA芯片内的时钟延迟,减小时钟偏差,主要有利用延时锁相环(DLL)和锁相环(PLL)两种方法,而其各自又分为数字设计和模拟设计。虽然用模拟的方法实现的DLL所占用的芯片面积更小,输出时钟的精度更高,但从功耗、锁定时间、设计难易程度以及可复用性等多方面考虑,我们更愿意采用数字的方法来实现。 本论文是以Xilinx公司Virtex-E系列FPGA为研究基础,对全数字延时锁相环(DLL)电路进行分析研究和设计,在此基础上设计出具有自主知识产权的模块电路。 本文作者在一年多的时间里,从对电路整体功能分析、逻辑电路设计、晶体管级电路设计和仿真以及最后对设计好的电路仿真分析、电路的优化等做了大量的工作,通过比较DLL与PLL、数字DLL与模拟DLL,深入的分析了全数字DLL模块电路组成结构和工作原理,设计出了符合指标要求的全数字DLL模块电路,为开发自我知识产权的FPGA奠定了坚实的基础。 本文先简要介绍FPGA及其时钟管理技术的发展,然后深入分析对比了DLL和PLL两种时钟管理方法的优劣。接着详细论述了DLL模块及各部分电路的工作原理和电路的设计考虑,给出了全数字DLL整体架构设计。最后对DLL整体电路进行整体仿真分析,验证电路功能,得出应用参数。在设计中,用Verilog-XL对部分电路进行数字仿真,Spectre对进行部分电路的模拟仿真,而电路的整体仿真工具是HSIM。 本设计采用TSMC0.18μmCMOS工艺库建模,设计出的DLL工作频率范围从25MHz到400MHz,工作电压为1.8V,工作温度为-55℃~125℃,最大抖动时间为28ps,在输入100MHz时钟时的功耗为200MW,达到了国外同类产品的相应指标。最后完成了输出电路设计,可以实现时钟占空比调节,2倍频,以及1.5、2、2.5、3、4、5、8、16时钟分频等时钟频率合成功能。
上传时间: 2013-06-10
上传用户:yd19890720