机器人程序设计中的状态机设计

时间:2022-10-02 10:23:15

【前言】机器人程序设计中的状态机设计由文秘帮小编整理而成,但愿对你的学习工作带来帮助。二、有限状态机理论 有限状态机,又称有限状态自动机,简称状态机。有限状态机理论构成有限状态机的具体内容是:有限状态机是由寄存器组和组合逻辑构成的硬件时序电路。它是由有限个状态相互间的转换构成的,下一个状态不但取决于各个输入值,还取决于当前的所有状态...

机器人程序设计中的状态机设计

摘 要:所谓工业机器人可以认为是一种拟人手臂、手腕和手功能的机械电子装置,它可把任意物件或工具按空间位置姿态的要求进行移动,从而完成某一工业生产的作业要求。如夹持焊枪,对汽车或摩托车车体进行点焊或弧焊;末端安装手钳,给压铸机或成型机上下料或装配机械零部件;末端安装喷枪进行喷涂作业。设计机器人的控制程序中会出现一系列的问题一个比较有难度的部分,所以笔者在这提及到了状态机设计的思路。通过对相关理论的引用和回顾中,给出了半自动的X射线的晶体角的分类机的简易智能机器人等的相关转换设计的相关实例,说明此方法的可用性和有效性。

关键词:状态转换;有限状态机;机械手;机器人

中图分类号:TP242 文献标识码:A 文章编号:1674-7712 (2014) 02-0000-01

一、前言

工业机器人系统通常分为机器人本体和控制器两大部分。微控制器的主要作用是根据用户的指令对机器人本体进行操作和控制,为每一个不同的机器人设计不同功能的控制程序是一个设计者经常感到困扰的难题。许多机器人都是有多个任务的,这些任务间是相关联的,且每个任务都有明确的细致要求,这就使得机器人的控制设计难度增大。在此,有一种叫状态机理论的相关概念,它能用在机器人的控制程序设计上。

二、有限状态机理论

有限状态机,又称有限状态自动机,简称状态机。有限状态机理论构成有限状态机的具体内容是:有限状态机是由寄存器组和组合逻辑构成的硬件时序电路。它是由有限个状态相互间的转换构成的,下一个状态不但取决于各个输入值,还取决于当前的所有状态。在任意时刻,当前状态就只能存在一个。只有在有事件输入的条件下,状态才会产生并发出一个输出。对在给定时刻要进行的活动的描述的是动作。它包括了进入动作、退出动作、输入动作和转移动作四个动作。

三、有限状态机的优、缺点

有限状态机,又称有限状态自动机,简称状态机,是表示有限个状态以及在这些状态之间的转移和动作等行为的数学模型。它具有以下优缺点:

优点:思路明确,内容简单易懂,状态间的关系明了,容易编程;只需要改动输出就可以改动机器人的动作要求;当发现程序不对时,更能快速的找到错误的点。

缺点:在每一个时刻,有且只有一个状态,没有并发性的表达方式,更不能描述异步并发系统;当设计需求的状态太多时,反而编程变得更耗时和困难。

四、基于状态转换方法的机器人的程序控制的设计实例

状态机是具有基于状态的动态行为的机器。它是一个动态系统,对时间和状态产生的时间做出反应。一个状态机包含一组有限的状态和一组转换的集合。其中状态描述运算中不同的阶段,而转换所描述的是如何使运算从一个状态变化到另一个状态。依赖于此理论的有限性,才能发此理论用在机器人的编程设计上,设计时可以把机器人的每个动作按要求先合理分成多个状态,并给予特定的符号代表每个状态,在每个状态给予相应的输出要求,及机器人的动作和反映。再细分到每个状态的输入条件,根据机器人在工作时感应到的事件来触发输入信号,使状态转换。如此,只要知道触发的条件,就能很简单的编写完机器人的控制程序。笔者举了一下具体两个例子说明有限状态机的表达是一个方便实用的机器人控制程序表达方式。

(一)简易智能车机器人的状态转换程序设计

简易智能车机器人的状态转换程序设计寻迹竞速机器人是第六届全国大学生电子设计竞赛的E题,这不进是考验学生的动手能里,更是考验学生对机器人智能控制的知识的掌握,如果在编程时只按照条件的判断编写代码,会有很大的难度而且花费很多的时间。基于以上所述的状态机的理论编写的话,会很简单快速的编写完成,让出更多时间给机器人其他部分的设计上,具体题目的要求是请参考参考书籍[2]。简易智能电动车的行驶路线如图1所示。

此简易智能机器人可分为3个工作,分别是检测工作、控制工作和显示工作,他们之间是相互交错的关系,这增加了参赛者编写程序的难度。如上述,笔者在下面将简单描述有限状态机理论编写程序的思路。状态转换方法的简易智能电动车的状态设计以及控制状态转换过程如图2所示。

由图2可见,机器人要从起跑线出发,通过一个直到后向左转弯,然后通过几个障碍物,再进入仓库。分析可得具体过程可以分为9个状态,就能简单理顺编程的思路了。再分别对每个状态进行细致的分析,分析出每个状态的输入条件的和输出信息,并分析出状态间转换的出发事件,这样就可以完成程序的整体设计。

(二)分类机械手的状态转换程序设计

机械手是一种能够自动定位控制并且可重新编程改变功能的多功能机器。它有多个自由度,可用来搬运各种工件,可以在各种不同环境中工作。能在各种有害环境下操作从而保护人身安全,因而广泛的应用于机械制造、冶金、电子、轻工和原子能等工作部门。它可代替人们的繁重工作,实现生产的机械化和自动化。

在生产半导体的工厂中,有一种名叫半自动X射线晶体角分类机的机器,其工艺要求就是能卸载晶片并能自动分类晶片。该分类机械手的具体工作如下:(1)开启启动命令,分类机械手由待命区域转至回转台的上方;(2)启动电动气阀,使得机械手的垂直臂伸长,让吸嘴正对已被测量的晶片;(3)使控制气阀对吸嘴加以负压,对回转台上的测量吸头加以正压,将已测量完的晶片转吸附在吸嘴上;(4)控制气阀使机械手的垂直臂回缩到原始位置,再对回转台测量吸头加负压,使之可吸附下一个晶片;(5)测量计算机的给出指令,使机械手移至分类料盒上方;(6)打开气阀,取消吸嘴负压,使晶片落入分类料盒中;(7)机械手移至起始待命位置,到此完成了一次晶片分类任务,并准备开始下一个过程。

通过以上的具体介绍,显然,控制其工作状态及其转换可以表达出机械手的各项工作任务以及相互间的变换,7项工作任务分别编号为1~7的工作状态,根据具体要求,再进一步的添加了3个新的隐含状态,分别是上电自检、基础步长自学习以及记忆和故障报警任务。该分类机械手的具体状态设计以及控制状态间转换过程如图3所示。由上述的有限状态机理论可知,每个状态都要完成一个特定的任务,但是状态间要有所联系,而且状态间的转换是要有外部的触发事件的刺激,使机器人能在不同的状态下做出相应的动作。以此为依据,对分类机械手控制程序分成多个模块进行设计,并根据时间属性值或者触发事件来互相衔接工作。

五、结束语

以上通过两个应用实例,说明了机器人动作行为的表示方法中,有限状态机是其中简单又好的一种,此方法不仅使机器人程序设计思路简明了,还简化了程序设计的过程,能减短设计者在编写程序的时间,使设计周期更快,并且日后机器人出错时,如果来源于程序,此思路编写的程序更容易找出错误。

参考文献:

[1]王忠海,叶以正.SoC有限状态机优化验证方法研究[J].计算机辅助设计与图形学学报,2005(09).

[2]全国大学生电子设计组委会.第六届(2003年)全国大学生电子设计竞赛试题[Z].

[3]蒋宗礼.形式语言与自动机理论[M].北京:清华大学出版社.2003.

[4]黄晓霞,萧蕴诗.基于多智能体的新型智能决策支持系统体系结构的产生和发展[J].微型电脑应用,2002(05).

[5]江海升.范辉.USSD对话有限状态自动机的设计与实现[J].计算机应用,2005(09).

[作者简介]黄俊杰(1991.04-),男,广西桂林人,在校本科生,重庆大学城市科技学院,研究方向:机器人。

上一篇:抽油机杆管偏磨防治技术研究与应用 下一篇:低温真空贮槽真空实用技术