嵌入式运动控制器高级语言设计与实现

来源 :山东大学 | 被引量 : 0次 | 上传用户:zhonghuiling2009
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
运动控制语言及其编译系统是嵌入式运动控制器关键的底层技术,对运动控制器的开放性、易用性具有重大的影响。传统的控制语言已经不能满足开放式运动控制器的发展要求,本文开发一种具有运动控制功能和PLC逻辑控制功能,结构化的高级语言形式的控制语言,并且构建了该语言的集成开发环境。 在分析研究其它运动控制和PLC逻辑控制语言以及运动控制器的基础上,定义了一种新的运动控制语言——EP语言。通过用正则文法定义词法,用上下文无关文法定义语法,文字描述形式定义了语义,最终明确地定义了EP语言。该语言采用类似C语言的形式,扩充了运动控制和PLC逻辑控制指令,支持函数和事件,具有运算能力强,结构化、易编写、通用性强的特点。EP语言能够满足多轴的运动轨迹和位置控制,数字和模拟信号I/O端口输入输出处理及逻辑控制。 EP语言编译系统采用源程序由上位机编译器编译成针对解释器的类似JAVA字节码形式的目标代码文件,下载到运动控制器中程序存储器,然后再由解释器解释执行的方案。上位机编译器工作在win2000操作系统PC机上;解释器作为系统任务构建在uC/OS-Ⅱ实时嵌入式操作系统上。解释器和操作系统共同构成虚拟机的形式,增加了解释器的可移植性。 编译器由词法分析、语法分析、语义分析、目标代码生成、符号表管理、错误处理六部分组成。词法分析根据词法分析源程序的字符串,输出标记(Token)序列。语法分析采用自底向上分析方法,根据语言语法分析标记序列,构建程序的语法树。语义分析模块前序遍历语法树,构建符号表;然后后序遍历语法树,进行语义检查。目标代码生成模块通过深度遍历语法树,根据不同节点类型产生不同的目标代码片断,最终生成整个目标代码。语法树采用结构体链表实现。符号表采用哈希表来实现。该编译器经检验可以准确快速产生目标代码。 解释器任务具有取指令和解释执行两个模块。EP语言解释器采用基于栈的运行时环境,全局存储区可以进一步分为事件入口地址区、I/O端口和轴号信息区、全局变量区。解释及其相关任务优先级从高到低为:I/O端口扫描任务、键盘扫描和液晶显示任务、数据通信任务、解释任务。 最后以VC++开发了图形界面的EP语言集成开发环境。并通过一个实际例程说明了EP程序的编程思路,并且验证EP编译系统的可行性和正确性。
其他文献
企业生存与发展的命脉是质量。产品质量是从物料选择开始到转化为成品的全过程各个环节把关的结果。因此,优质的产品不是检验出来的。而是靠计划和生产过程控制得来的。兽药生
2013年初水牛性控冻精人工授精技术推广在广西桂平市拉开序幕,全市30多个乡镇的配种员积极参与,几个月来,各乡镇开展得如火如荼,但是大多数乡镇农村散养水牛性控冻精人工授精
为解决铁塔监测系统误报率高、监测不准确、设备故障率高的问题,研发基于北斗RTK(Real-TimeKinematic,实时动态)相位差分高精度定位技术的铁塔倾斜监测系统。监测系统基于Lin
过滤是水处理工艺流程中的关键环节之一。由于“反粒度过滤”在理论上能克服传统“下向流过滤”的诸多缺点,一致认为是有发展前景的过滤技术。但长期以来并未在理论与应用方
发生难产的原因较多。母牛个体小、产道狭窄,配种过早,产道损伤;瘦弱无力,不能产出胎儿,胎儿过大、畸形、死胎、胎位异常、胎势不正等都会发生。发生难产时应根据具体情况当机立断
近期,多地发生短信嗅探盗刷事件。据了解,这项'短信嗅探'技术,只需要在网上花费不到30元购买一部摩托罗拉C118手机,黑产从业者便可以窥探到用户手机内的短信内容,盗
期刊
一纳税人到某税务事务所办理税务登记事宜(该事务所受税务机关委托办理)。工作人员审核其登记资料时发现,该纳税人领取营业执照50日后才办理税务登记手续,违反了《税收征管法
通化县位于吉林省东南部,长白山南麓,县域广阔,资源丰富。随着社会的进步经济的发展,人民的生活水平不断提高,人们对生活的质量有了更高的要求,而禽类产品属"白肉"类更具营养价
德尔布吕克是19和20世纪德国最杰出的战略思想家,对现代战略思想的发展贡献卓著。他的全部战略思想就是对克劳塞维茨战略思想的继承和发展。他不仅坚持了克劳塞维茨"战争是政