CN100534730C - 机器人控制系统 - Google Patents
机器人控制系统 Download PDFInfo
- Publication number
- CN100534730C CN100534730C CNB2006800279333A CN200680027933A CN100534730C CN 100534730 C CN100534730 C CN 100534730C CN B2006800279333 A CNB2006800279333 A CN B2006800279333A CN 200680027933 A CN200680027933 A CN 200680027933A CN 100534730 C CN100534730 C CN 100534730C
- Authority
- CN
- China
- Prior art keywords
- data
- sensor unit
- robot
- sensor
- primary processor
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
- 238000012546 transfer Methods 0.000 claims abstract description 22
- 230000005540 biological transmission Effects 0.000 claims description 24
- 230000001133 acceleration Effects 0.000 claims description 17
- 238000000034 method Methods 0.000 claims description 12
- 230000008569 process Effects 0.000 claims description 5
- 230000006854 communication Effects 0.000 abstract description 18
- 238000005259 measurement Methods 0.000 abstract description 18
- 238000004891 communication Methods 0.000 abstract description 17
- 230000003247 decreasing effect Effects 0.000 abstract 1
- 238000010586 diagram Methods 0.000 description 9
- 238000007726 management method Methods 0.000 description 6
- 230000001360 synchronised effect Effects 0.000 description 5
- 241001269238 Data Species 0.000 description 4
- 230000008859 change Effects 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 239000011159 matrix material Substances 0.000 description 4
- 230000006870 function Effects 0.000 description 3
- 230000002123 temporal effect Effects 0.000 description 3
- 238000012360 testing method Methods 0.000 description 3
- 230000033228 biological regulation Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 239000013078 crystal Substances 0.000 description 2
- 230000003111 delayed effect Effects 0.000 description 2
- 230000002349 favourable effect Effects 0.000 description 2
- 230000015654 memory Effects 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 239000010453 quartz Substances 0.000 description 2
- 230000004043 responsiveness Effects 0.000 description 2
- VYPSYNLAJGMNEJ-UHFFFAOYSA-N silicon dioxide Inorganic materials O=[Si]=O VYPSYNLAJGMNEJ-UHFFFAOYSA-N 0.000 description 2
- 235000003140 Panax quinquefolius Nutrition 0.000 description 1
- 240000005373 Panax quinquefolius Species 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 125000004122 cyclic group Chemical group 0.000 description 1
- 238000013144 data compression Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000003745 diagnosis Methods 0.000 description 1
- 238000007667 floating Methods 0.000 description 1
- 230000005484 gravity Effects 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 230000014759 maintenance of location Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000001105 regulatory effect Effects 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 238000004904 shortening Methods 0.000 description 1
- 230000011664 signaling Effects 0.000 description 1
- 238000003860 storage Methods 0.000 description 1
- 239000000758 substrate Substances 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
Images
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
Landscapes
- Engineering & Computer Science (AREA)
- Robotics (AREA)
- Mechanical Engineering (AREA)
- Manipulator (AREA)
- Arrangements For Transmission Of Measured Signals (AREA)
- Numerical Control (AREA)
- Communication Control (AREA)
Abstract
本发明涉及机器人控制系统。利用串行数据线(14)在传感器单元(10)和机器人CPU(12)之间进行通信。可变长度数据格式包括传送大小段、命令段、传送模式段、测量数据段和CRC段;并且,随着增加和减小所述测量数据段中的数据的类型数,由传送类型段规定该数据的类型。通过减小所述数据的类型数,所述数据的长度被缩短,因而确保了通信速度。此外,通过发送来自所述机器人CPU(12)的时间戳数据,以及通过发送来自所述传感器单元(10)的时间戳+计时时间数据,所述传感器单元(10)的测量次数精确地被所述机器人CPU(12)控制。
Description
技术领域
[0001]本发明涉及机器人控制系统,特别涉及在机器人的主处理器和传感器单元之间的数据通信。
背景技术
[0002]加速度传感器和角速度传感器用于机器人等的可移动躯体的姿态控制。如果建立三个正交轴,即X轴、Y轴和Z轴,那么在这三个轴向上的加速度由三个加速度传感器检测,并且围绕这三个轴的角速度由三个角速度传感器检测。围绕这些轴的角,即姿态角,通过角速度传感器的输出的时间积分来获得,并且因而计算侧倾(roll)角、俯仰(pitch)角和横摆(yaw)角。
[0003]在公开号为JP-A-2004-268730的日本专利申请中,公开了利用从陀螺仪传感器输出的加速度数据和姿态数据来执行姿态控制的技术。
[0004]而且,在公开号为JP-A-6-340149的日本专利申请中,公开了发送和接收包括可变长度的命令和参数组的数据。
[0005]尽管由传感器单元检测到的例如姿态角等传感器数据被发送到执行机器人的姿态控制的主处理器(或主处理机),并且被用在反馈控制中,但是由于当随着数据量的增加控制周期变长时机器人的可控性降低,所以理想的是能够根据需要通过调节发送的数据量并因此确保数据通信速度,来增强可控性。
[0006]而且,如果由于通信失败等导致数据丢失,主处理器能够执行预定丢失程序并且能够保持机器人的可控性,但是需要主处理器能够可靠地检测发生了数据丢失的事实。
发明内容
[0007]本发明的目的在于提供一种机器人控制系统,其可以确保机器人控制的响应度。
[0008]根据本发明的第一方案的机器人控制系统,包括用于机器人的主处理器和将传感器输出发送到主处理器的传感器单元。在主处理器和传感器单元之间,数据以可变长度数据格式发送和接收。
[0009]在本发明的第一方案中,没有使用固定长度数据格式,而是通过以可变长度数据格式来发送和接收数据来确保机器人的可控性。换句话说,通过在适当地缩短数据长度的同时执行数据发送和接收,可以增强通信速度,并且因此抑制控制滞后。
[0010]因此,具体来说,可变数据长度格式包括:传送大小段、命令段、传送模式段和数据段;传送大小段规定了传送的数据量;命令段规定了传送目的地的细节;并且传送模式段规定了要被传送的数据的类型和序列。因此可以通过减小要被传送的数据的类型数来缩短数据的长度,此外,因为要被传送的数据的类型和序列(从接收方来看,是接收的数据的类型和序列)由传送模式段规定,即使数据的长度变化,也可以可靠地获得接收方所需的数据。
[0011]根据本发明的第二方案,在第一方案中,载有由主处理器计时的瞬时时刻的数据包含在从主处理器发送到所述传感器单元的数据中;而且,此外,在载有瞬时时刻的数据和载有由传感器单元计时的经过时间的数据包含在从传感器单元发送到主处理器的数据中。通过将载有瞬时时刻的数据和载有经过时间的数据包含在从传感器单元发送到主处理器的数据中,可以在主处理器中获得与已经从传感器单元接收到的数据有关的时间信息,并且可以简单地和容易地从接收数据的非顺序时间中检测到数据的丢失。而且,即使在从传感器单元发送到主处理器的数据中有延迟发生,由于(载有瞬时时刻的数据+载有经过时间的数据)包含在从传感器单元发送到主处理器的数据中,因而主处理器可以准确地识别从传感器单元发送的数据的时间(测量时间)。此外,由于载有瞬时时刻的数据仅仅由主处理器产生,所以可以没有任何所谓的同步问题的发生,即,由主处理器测量的瞬时时刻和由传感器单元测量的瞬时时刻之间的任何误差问题。
[0012]根据本发明,由于可以以合适的方式增加和减小发送和接收的数据的长度,因而可以确保机器人控制的响应度。
[0013]此外,根据本发明的第二个方案,由于主处理器可以以精确的方式获得时间信息,即使在通过传感器单元的数据发送中发生时间延迟,也可以执行机器人的实时处理。
附图说明
[0014]从参照附图的下述描述和示例实施例中,本发明的前述和进一步的目标、特点和优点将变得明显,其中相同或相应部分用相同的附图标号表示,其中:
图1为根据本发明实施例的机器人控制系统的示意结构图;
图2A和2B为数据发送和接收的时间图(timing chart);
图3为数据格式图;
图4A和4B为可变长度数据的说明图;
图5为包含在测量数据段中的时间戳和计时时间的说明图;
图6为示出了时间戳和计时时间的实例图;及
图7A和7B为示出了该机器人控制系统的时间管理的说明图。
具体实施方式
[0015]下面将参照附图说明本发明的实施例。
[0016]图1为根据本发明实施例的机器人控制系统的示意结构图。设置有传感器单元10和作为机器人的主处理器(主处理机)的机器人CPU 12,并且该传感器单元10和机器人CPU 12通过串行数据线14连接起来,以使彼此能够串行通信。应理解为该传感器单元10和机器人CPU 12所安装到的机器人可以是任何所需的类型;其可以是任何在两个轮子上行走的机器人,在四个轮子上行走的机器人,两条腿行走的机器人,飞行机器人等。
[0017]传感器单元10包括作为加速度传感器或角速度传感器等的传感器15、RAM 16、ROM 18、驱动器20和CPU 22。
[0018]ROM 18存储OS(操作系统)或写入了作为用于传感器单元10的运行程序的程序。在该程序中,包括转变要发送到机器人CPU12的传感器输出的类型或重启功能的参数,或者设定内部滤波器等的瞬时时刻的参数。ROM 18是可重写的存储器,例如闪存ROM等。
[0019]RAM 16存储已经存储在ROM 18中的参数。换句话说,存储在ROM 18中的参数被读出并且写入(即,导入)到RAM 16中,并且然后通过读出写入到RAM 16中的参数来执行预定程序。CPU 22将这些已经从ROM 18读出的参数写入到RAM 16的特定区域中。在该实施例中,该特定区域称为“第一区域”。对于该第一区域,其起始地址(物理地址)及其结束地址可以被预先固定地设置在ROM 16内;或者可选的,它们也可以是可变的。
[0020]根据从RAM 16读出的参数,CPU 22从已经从传感器15输入的各种类型传感器输出中选择那些由所述参数设定的传感器输出,并且将它们经由驱动器20发送到机器人CPU 12。驱动器20可以是,例如RS-232C驱动器,但是不限于此;其可选地可以是USB、RS422、IEEE1394等。CPU 22将传感器输出数据经由驱动器20发送到串行线上,但是仅仅在作为预定控制阶段的一部分的发送阶段过程中发送该数据。所述预定控制阶段的剩余阶段被分配为接收阶段,在所述接收阶段中,CPU 22经由串行数据线14接收从机器人CPU 12发送的数据。
[0021]图2A和2B为示出了在传感器单元10的CPU 22和机器人的CPU 12之间进行的串行通信的时间图。图2A为从CPU 22看在数据发送过程中的时间图,而图2B为从CPU 22看在数据接收过程中的时间图。
[0022]在图2A中,一个控制阶段为,例如10msec,并且该控制阶段被时间分割为发送阶段和接收阶段。CPU 22在该发送阶段将传感器输出串行地从传感器15发送到机器人CPU 12。在图中,在该发送阶段从CPU 22发送的数据示出为发送数据100。例如,该发送数据100可以在编码为BASE64之后发送。该BASE64是公知技术,并且是用于发送编码为ASCII文件的二进制数据的变换方法:其通过将二进制数据每6比特进行分割,并且通过将这些分割的每个看作是从0到63的6比特整数来对应于包括文字字符和其它标识的64个传统ASCII符号中的一个来完成。通过BASE64编码,数据量增加,有利的方面是容易读写数据,因为其是常规格式。当然,可以使用其它编码方法或数据压缩方法。
[0023]通过在BASE64编码数据之前或之后附加预定的分离符(分隔符)来构造发送数据的单个帧。对于分隔符,使用了“(”、“<”和“)”。“(”和“<”用作帧的起始分隔符,而“)”用作结束分隔符;发送数据的单个帧的两个可能的例子如下:
发送数据的一帧=(BASE64编码数据)
发送数据的一帧=<BASE64编码数据)
这里,“(”为表示在发送数据中包含有命令的分隔符,而“<”为表示在发送数据中包含有由传感器单元10检测到的传感器数据的分隔符。前一个类型帧称为命令类型帧,而后一个类型帧称为测量数据类型帧。
[0024]另一方面,如图2B中所示,除了发送阶段之外的控制阶段的剩余部分被分配为接收阶段,并且机器人CPU 12在该时刻将数据发送到串行数据线14。CPU 22在此时刻接收从机器人CPU 12发送的数据。在图中,从机器人CPU 12发送的数据被示为接收数据200。当CPU22在该接收阶段从机器人CPU 12接收数据时,其将该接收数据200存储在RAM 16中。接收数据200所存储的区域为第二区域,其与第一区域不同。第二区域的起始地址可以是在第一区域的结束地址之后的下一个地址,或者可以从那里间隔预定数量的存储地址。如果要发送的数据量大,那么机器人CPU 12将该数据分割为分布在多个控制阶段上的包,并且连续地发送它们。CPU 22连续地接收该数据并且将它存储在RAM 16的第二区域中。当改变从传感器单元10发送到机器人CPU 12的数据的类型等时,存储在第二区域中的参数被使用。
[0025]可变数据长度格式
图3示出了用于在传感器单元10和机器人CPU 12之间的数据传输的数据格式300。其是可变长度数据格式,其中发送的数据的数量可以通过增加和减少来进行调节。
[0026]数据格式300包含,顺序地,传送大小段302、命令段304、传送模式段306、测量数据段308和CRC段310。
[0027]传送大小段302规定了发送数据的一帧中的数据总量。该数据总量可以用例如两个字节来表示。
[0028]命令段304规定了传送目的地的执行细节。特别地,其规定了必须由传感器单元10执行的细节。该命令用一个字节表示。这样的命令的例子如下。
[0029]“START”命令为用于启动通过传感器单元10测量的命令。当收到该“START”命令时,CPU 22在分配的阶段内将传感器输出从传感器15发送到机器人CPU 12。
[0030]“STOP”命令为用于停止通过传感器单元10的测量的命令。
[0031]“GET”命令为用于读取存储在RAM 16的第一区域或第二区域中的参数的命令。
[0032]“SET”命令为用于将新参数写入到RAM 16的第二区域中的命令,并且,基于该“SET”命令,如上所述,CPU 22将从机器人CPU 12接收到的数据存储到RAM 16的第二区域中,并且能够通过读取和执行存储在该第二区域中的新参数(更新参数)来改变其属性。在本发明的该实施例中,发送数据的类型的变化或者发送数据的数量的变化包含在传感器单元10的属性的变化中。
[0033]“WRITE”命令为用于将存储在RAM 16的第二区域中的新参数写入ROM 18中的命令。据此,即使电源中断之后新参数也被保留在传感器单元12中。
[0034]“RstTim”命令为用于将传感器单元10的计时时间重置到0的命令。传感器单元10的计时时间将在以后进行描述。
[0035]传送模式段306规定了从传感器单元10发送到机器人CPU12的传感器数据的类型。该传送模式可以用例如6字节来表示。尽管需要为测量类型帧分配传送模式,但并不需要为命令类型帧分配一个。传送类型的例子如下:
最低有效位(LSB):姿态角(侧倾角、俯仰角、横摆角)
比特1:角速度
比特2:加速度
比特3:倾斜角
比特4:重力补偿之后的加速度
比特5:速度
比特6:位置
比特7:姿态矩阵
比特8:姿态矩阵
比特9:姿态矩阵
比特10:姿态矩阵
比特11:未使用
比特12:单元温度
比特13:基板温度
比特14:诊断
比特15:计时时间
当这些比特中的任一个为“1”时,对应它的数据被作为测量数据发送。例如,当比特0(LSB)为“1”时,来自传感器15的姿态角数据被作为测量数据发送。
[0036]测量数据段308为由传送模式规定的传感器15的输出中的传感器输出。例如,可能是姿态角、角速度、温度、时间戳、计时时间、单元名等。这些传感器数据中的每个具有固定数据格式。换句话说,姿态角、角速度、加速度、温度等是浮点型数据,而时间戳和计时时间是整型数据,单元名是字符型数据。
[0037]CRC段310规定了CRC(Cyclic Redundancy Check)数据。CRC是公知技术,其中作为测试对象的发送数据块被认为是二进制数据,通过例如产生二进制数据的多项式等式的计算等式来处理所述块,来产生固定比特数(16比特或32比特)的测试数据,这样生成的此用于测试的数据附加在实际数据之后被发送,并且,在接收方,利用相同的多项式等式来处理来测试有无错误。
[0038]在此方式中,因为数据量由在发送数据格式的头部的传送大小段302规定,并且要发送的传感器数据的类型和要发送的顺序由传送模式段306规定,因而即使数据的长度改变,也可以以准确的方式在接收方接收各种传感器数据。而且,由于特定的分隔符附加在帧头和帧尾,接收方可以简单地和容易地确定数据接收的开始和结束,而不用关心数据的长度。另外,当机器人CPU 12(或用户)要求传感器单元改变数据的类型或格式时,即使由于实时处理导致发送帧的发送被延迟,该变化的细节在所述发送帧中在从传感器单元10到机器人CPU 12中被反映出来,因为涉及数据类型等的信息写入到数据格式300中,机器人CPU 12也可以执行输入,而不关心帧被延迟的实情。
[0039]在下面将描述一个示例,在该示例中,要从机器人CPU 12发送到传感器单元10的用于改变传感器输出的命令被输出,并且传感器单元根据该命令改变传感器输出,并且从传感器单元10发送到机器人CPU 12的数据的长度改变。
[0040]假定在传感器15的输出中,传感器单元10的CPU 22在发送阶段过程中发送姿态角、角速度和加速度。在图3的数据格式300中,机器人CPU 12在命令段304中设置“SET”命令,然后设置数据量(在设置位置中)和设置参数(setting parameters),并且在图2的接收阶段将它们发送到传感器单元10。传感器单元10的CPU 22解释该“SET”命令,并且将设置在测量数据段308中的参数存储到RAM 16的第二区域中。已经存储在RAM 16的第一区域中的参数是传送模式的各种比特值,并且因为这是全部的姿态角、角速度和加速度被发送的模式,所以第二比特、第一比特和最低有效位设定为“111”。另一方面,从机器人CPU 12接收到的并且存储在RAM 16的第二区域中的新参数为“100”。这是加速度被输出,而角速度和姿态角没有被输出的模式。将这些参数存储在RAM 16的第二区域中之后,根据这样被存储在第二区域中的参数,CPU 22将传感器输出以图3的数据格式300从传感器15发送到机器人CPU 12。并且,在解释完“SET”命令并且将新参数存储在RAM 16的第二区域中之后,CPU 22转换到新参数并且从下一个发送时刻发送数据。如果CPU 22不能在计算程序的执行过程中分配任务,或者在通过RS-232C等的通信过程中没有剩余时间,那么转换到新参数从下一个发送帧反映出来。以此方式,传送模式段306的传送模式从“111”转换到“100”,并且包含在测量数据段308中的传感器输出也从(加速度、角速度和姿态角)转换到(加速度)。间隔符“<”附加在帧头,间隔符“)”附加在帧尾。因为角速度和姿态角从测试数据中去除,所以数据的长度变短,从而一帧中数据量也变少。数据的总量由传送大小段302在其头中设置。
[0041]机器人CPU 12通过检测数据的头间隔符和尾间隔符来确定从传感器单元10接收到的数据的一帧,从帧的传送大小段302确定接收到的帧中的数据量,从传送模式段306确定只有加速度被发送,并且获得设置在测量数据段308中的加速度。机器人CPU 12根据接收到的该加速度执行机器人的姿态的反馈控制。由于发送的数据量少(即,数据的长度变短),因而可以增强通信速度。
[0042]在图4A和4B中,示出了在参数变化之前的数据格式(在图4A中)和在参数变化之后的数据格式(在图4B中)。示意性地示出了测量数据段308表示的数据长度变短的情况。
[0043]通过时间戳的时间管理
另一方面,当将传感器输出从传感器单元10发送到机器人CPU 12时,有时会发生数据丢失的数据“跳跃”。如果控制阶段分为T1、T2和T3,那么在这些阶段期间,传感器单元10不中断地发送数据,有时可能会发生,当机器人CPU 12在阶段T1和T3中接收数据时,而另一方面阶段T2中的数据丢失。当该类型的数据丢失发生时,机器人CPU 12需要可靠地检测到数据丢失的发生以执行丢失处理。如果不能检测这样的数据丢失,那么基于在该错误期间的传感器输出,会错误地执行姿态控制;然而,在另一方面,如果可以检测这样的数据丢失,那么可以通过执行用于丢失数据的辅助处理来保持姿态控制。
[0044]因此,在本发明的该实施例中,除了如上所述的可变长度数据格式,“时间戳”数据和“计时时间”数据还被附加到测量数据段308上。该“时间戳”数据在周期性时刻,或在任何需要的时刻被附加到从机器人CPU 12发送到传感器单元10的数据上。用于附加所述时间戳的时刻由用户来设定。机器人CPU 12结合内部计时器,并且当发送数据时,将表示参考瞬时时刻的数据作为时间戳发送到传感器单元10。
[0045]传感器单元10的CPU 22也结合内部计时器,并且在将传感器15的传感器输出发送到机器人CPU 12时,将包含在来自机器人CPU12的数据中的时间戳发送到机器人CPU 12,换句话说,即表示参考瞬时时刻的数据,以及由计时器计时的已过时间。每当CPU 22从机器人CPU 12接收到时间戳时,其进行更新并且将时间戳存储到RAM 16中。而且,当电源打开时,或者当从机器人CPU 12接收到“RtTim”命令时,CPU 22的计时器重置。因此,经过时间给出了从电源打开时的经过时间,或者接收到“RtTim”命令时的经过时间。通过使时间戳随着机器人CPU 12发送“RtTim”命令而发送,可以确保计时时间示出了由时间戳示出的瞬时时刻的经过时间,因而从所述两项信息,即,时间戳和计时时间,机器人CPU 12可以精确地检测到与从传感器单元10接收到的数据有关的时间信息。
[0046]图5示意性地示出了数据结构300中的测量数据段部分。“时间戳”308a包含在从机器人CPU 12发送到传感器单元10的数据中,并且为载有参考瞬时时刻的数据,在所述参考瞬时时刻机器人CPU 12执行测量:例如,其可以是12:01:15等。并且“计时时间”308b为载有从传感器单元10执行测量开始时的经过时间;例如,其可能是00:00:12,通过检测附加在从传感器单元10接收到的数据上的时间戳308a和计时器308b,机器人CPU 12可以识别从传感器单元10接收到的数据的时刻。“时间戳”308a也可被称为附加在“计时时间”308b上的时间标签。如图6中所示,假定机器人CPU 12从传感器单元10顺序接收到的帧1、2和3的时间戳和计时时间如下:
<接收到的帧1>
时间戳12:01:15
计时时间00:00:12
<接收到的帧2>
时间戳12:01:15
计时时间00:00:14
<接收到的帧3>
时间戳12:01:15
计时时间00:00:18
从接收到的帧2的计时时间和接收到的帧3的计时时间之间差,机器人CPU 12可以检测接收到的帧2和接收到的帧3之间的数据丢失了。
[0047]图7A和7B示意性地示出了传感器单元10和机器人CPU 12之间的时间管理,换句话说,通过时间数据的发送和接收来进行时间管理。首先,在图7A中,机器人CPU 12在瞬时时刻t1发送时间戳。传感器单元10的CPU 22接收该时间戳,并且将该载有瞬时时刻t1的时间戳存储在RAM 16中。如果“RsTim”命令与所述时间戳一同接收,那么计时器被该命令重置到0,并且从该时间戳的瞬时时刻t1重新执行计时。如图7B中所示,CPU 22将瞬时时刻t1的时间戳和通过计时器测量的计时时间Δt附加在来自传感器15的传感器输出上,然后将它们发送到机器人CPU 12。机器人CPU 12能够识别收到数据的瞬时时刻为t1+Δt。因而,即使例如通信需要一些时间,使得在从传感器单元10到机器人CPU 12的传输中发生时间延迟,由于机器人CPU 12可以识别所接收到的帧的瞬时时刻,即传感器单元10的测量时间,其可以进行实时处理。而且,如果数据被连续接收的有效瞬时时刻分别为t1+Δt、t1+2·Δt和t1+3·Δt,那么可以检测到数据已经被无丢失地接收。另一方面,如果数据被连续接收的有效瞬时间分别为t1+Δt、t1+2·Δt和t1+4·Δt,那么,因为数据是在预定的阶段从传感器单元10无中断地发送,可以检测到在t1+3·Δt的数据项丢失。
[0048]尽管在该实施例中,不仅可以在机器人CPU 12中还可以在传感器单元10中设置专用计时器,并且对于被该内部计时器测量的、当发送来自传感器单元10的数据时要被附加和传输的当前瞬时时刻,需要传感器单元10中的计时器和机器人CPU 12中的计时器彼此精确地一致。因为在该实施例中,当前瞬时时刻不是由传感器单元10测量,而是只有时间间隔和时间戳一起被测量和发送,因此不需要考虑两个计时器的同步问题。
[0049]如上所述,根据本发明的实施例,可以通过如下来提供流畅的姿态控制:
(1)以预定的间隔将数据从传感器单元10无中断地发送到机器人CPU 12;
(2)进行设置以使得可以将数据以可变长度数据格式从传感器单元10发送到机器人CPU 12,并且使得机器人CPU 12可以可靠地接收并读取任何类型的数据,即使其是在任何时刻发送的;及
(3)当数据从传感器单元10发送到机器人CPU 12时,设置要被传感器单元10附加的并且被发送到机器人CPU 12的测量时间数据,使得两个计时器之间的同步或误差问题不会发生,并且机器人CPU 12可以准确地确定这是多少数据。
[0050]尽管在该实施例中,传感器单元10将载有时间戳和计时时间的数据以可变常数数据格式300发送到机器人CPU 12,也可以将此应用到任何需要的数据格式,包括固定长度数据格式。
[0051]而且,尽管在所述实施例中,通过示例的方式示出了机器人CPU 12和传感器单元10之间的一对一通信,本发明并不限于此。将大量的器件连接到例如USB、IEEE1394、Ethernet(注册商标)等的通信线也是可接受的。具体来说,当前有多个类型的传感器或致动器,此外还有大量的机器人CPU 12,它们全部连接在通讯网络上。对于此多对多系统,为了确保其实时性能,不仅通讯速度足够高是不够的,而且对于该系统来说,能够在它的数据单元中执行数据的解码也是非常重要的,并且在数据中包括用于执行瞬时时刻补偿的必要的瞬时时刻信息也是非常重要的。换句话说,在通讯网络中,通信速度快的高级别器件,通信速度慢的低级别器件,以及尽管是高级别而且具有高通信速度、但数据量极大、以致需要相当大的时间进行通信的器件或类似器件混合在一起,并且由于它们之间的通信是随机执行的,所以对于所有这些器件来说不可能实时地精确地运行,并且实际上需要在充分的时间宽度内匹配它们的时刻。在实际中,该充分的时间宽度取决于系统,但是通常来说其大约是1ms到100ms。因此,在实际中,为了确保实时控制,设置自解码能力和瞬时时刻计算功能变得关键。应理解为,尽管需要标识自身或者基于命令所来自的器件,这可以通过头部分来管理。而且,如上所述,尽管在该示例中使用了BASE64,因为BASE64是常用格式,其还有一个有利的方面是多个器件的每一个可以通过读取数据大小和头,甚至是不读取内容(测量数据),以简单和容易的方式确定这是否是其自身所需要的数据。
[0052]下面更具体地说明将机器人CPU 12和传感器单元10连接到网络的例子。应理解为,假定对于这些中的每个,附加有相互标识在网络上的各传感器的符号(传感器名称或传感器编号等),或标识CPU的符号(处理器名称或处理器编号等)的符号,并且这些符号被包含在发送数据中。
[0053]当网络中有多个传感器时
因为在来自传感器的数据中,包含有标识传感器的符号,因而机器人CPU能够从多个传感器中识别特定的传感器。而且,机器人CPU能够利用该标识传感器的符号将命令发送到特定的传感器。
[0054]当网络中有多个CPU时
因为在来自传感器的数据中,包含有标识多个CPU的特定的CPU的符号,因而机器人的多个CPU能够从多个CPU中识别使用该传感器的数据的特定的CPU。而且,因为来自机器人的多个CPU的特定的CPU包含了在其发送的数据中标识其自身的符号,因而可以在识别特定的CPU的同时将命令发送给传感器。
[0055]当网络中有多个传感器和多个CPU时
因为在来自传感器的数据中,包含有标识传感器的符号和标识CPU的符号,因而机器人的多个CPU和多个传感器能够互相识别传感器和CPU的组合。而且,因为在机器人的多个CPU中的特定的CPU执行包含有标识传感器的符号和标识CPU的符号的数据传输,因而可以在识别特定的CPU的同时将命令发送给传感器。
[0056]当网络中有多个传感器和多个CPU时的时间戳和计时时间
计时时间以积分方式由每一个传感器固有的计时器来计算。对于时间戳,每一个CPU具有其自己的固有的时间戳和传感器,并且通过传感器的预定组合,传感器和CPU共享共有的时间戳。据此,由多个传感器识别和管理的瞬时时刻被同步,而且即使没有维持该同步也可以实时地控制机器人。传感器可以以简单的计时器(时钟计时器等)来操作,所以可以以低成本来实现这些功能。
[0057]在此方法下,可以同步多个CPU的瞬时时刻,并且即使没有维持该同步也可以实时地控制机器人。据此,使得CPU更紧凑并且可以以低成本来实现。而且,因为即使扩展系统或者插入额外的器件,也不需要同步所增加的CPU或传感器的瞬时时刻,因此系统的增减简单并且容易。一般地,同步多个传感器或CPU的瞬时时刻并且保持它们的同步是困难的,并且这使得系统尺寸增大、成本增加、以及操作延迟。因为通常,在简单的时钟计时器中,计时由例如石英晶体震荡器的低级时钟执行,因此难于精确地匹配多个传感器和多个CPU的时钟周期和时钟时刻,所以实际中不可能同步多个传感器和多个CPU的瞬时时刻。因为机器人的实时控制等所需要的是确定用于预定的CPU和预定的传感器的同步的瞬时时刻,因此通过具有固有的共有时间戳,可以实现相等的行为来进行瞬时时刻的同步。而且,通过以预定长度的周期来更新时间戳,可以消除由于通过例如石英晶体震荡器的时钟进行的计时导致的积分误差,并且因此在实际中长期的瞬时时刻管理变得可能。因此,对于具有共有的时间戳的多个CPU,可以简单地并且容易地实现它们相互的瞬时时刻的等同匹配。
Claims (7)
1、一种机器人控制系统,包括用于机器人的主处理器(12)以及将传感器输出发送到所述主处理器(12)的传感器单元(10),其特征在于,
在所述主处理器(12)和所述传感器单元(10)之间,数据以可变长度数据格式发送和接收;
所述可变长度数据格式包括传送大小段、命令段、传送模式段和数据段;
所述传送大小段规定了传送的数据量;
所述命令段规定了传送目的地的细节;及
所述传送模式段规定了要被传送的数据的类型和序列。
2、根据权利要求1所述的机器人控制系统,其中:
所述主处理器(12)设定作为所述传送模式段的参数以减小要被传送的数据的类型数,并且将所述参数发送到所述传感器单元(10);及
所述传感器单元(10)根据所述参数设定所述可变长度数据格式的所述传送大小段和所述传送模式段,并且将类型数减少的数据发送到所述主处理器(12)。
3、根据权利要求1所述的机器人控制系统,其中:
载有由所述主处理器(12)计时的瞬时时刻的数据包含在从所述主处理器(12)发送到所述传感器单元(10)的数据中;及
所述载有瞬时时刻的数据,和载有由所述传感器单元(10)计时的经过时间的数据包含在从所述传感器单元(10)发送到所述主处理器(12)的数据中。
4、根据权利要求3所述的机器人控制系统,其中所述经过时间由每一个传感器所固有的计时器累加得到。
5、根据权利要求1所述的机器人控制系统,其中在作为预定控制阶段的一部分的发送阶段过程中,所述传感器单元(10)将数据发送到所述主处理器(12),并且在所述预定控制阶段的剩余阶段过程中,所述传感器单元(10)从所述主处理器(12)接收数据。
6、根据权利要求1所述的机器人控制系统,其中所述传感器输出包括姿态角、角速度、加速度、温度、时间戳、计时时间和单元名中的至少一个。
7、根据权利要求1所述的机器人控制系统,其中所述传感器输出包括标识传感器的符号和标识CPU的符号中的至少一个。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP223512/2005 | 2005-08-01 | ||
JP2005223512A JP2007038326A (ja) | 2005-08-01 | 2005-08-01 | ロボット制御システム |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101232977A CN101232977A (zh) | 2008-07-30 |
CN100534730C true CN100534730C (zh) | 2009-09-02 |
Family
ID=37708192
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB2006800279333A Expired - Fee Related CN100534730C (zh) | 2005-08-01 | 2006-08-01 | 机器人控制系统 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20100094462A1 (zh) |
JP (2) | JP2007038326A (zh) |
CN (1) | CN100534730C (zh) |
WO (1) | WO2007015145A2 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110220458A (zh) * | 2018-03-01 | 2019-09-10 | 欧姆龙株式会社 | 测量系统以及测量方法 |
Families Citing this family (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR2929873B1 (fr) * | 2008-04-09 | 2010-09-03 | Aldebaran Robotics | Architecture de controle-commande d'un robot mobile utilisant des membres articules |
RU2483471C2 (ru) * | 2008-11-13 | 2013-05-27 | Майкро Моушн, Инк. | Передатчик с таймером относительного времени |
JP4676544B2 (ja) * | 2009-05-29 | 2011-04-27 | ファナック株式会社 | 工作機械に対してワークの供給及び取り出しを行うロボットを制御するロボット制御装置 |
DE102009037302B4 (de) * | 2009-08-14 | 2022-03-24 | Abb Ag | Anordnung zur Diagnose einer Vorrichtung mit beweglichen Teilen |
DE102010052394B4 (de) * | 2010-11-24 | 2019-01-03 | Kuka Roboter Gmbh | Robotersystem mit einem Roboter und zwei wechselweise mit diesem verbindbaren Einrichtungen sowie Verfahren zum Wechseln dieser Einrichtungen |
JP6052576B2 (ja) * | 2012-05-30 | 2016-12-27 | 日本電気株式会社 | 情報処理システム、情報処理方法、情報処理装置、携帯端末およびその制御方法と制御プログラム |
AU2013204965B2 (en) * | 2012-11-12 | 2016-07-28 | C2 Systems Limited | A system, method, computer program and data signal for the registration, monitoring and control of machines and devices |
JP6337449B2 (ja) * | 2013-11-27 | 2018-06-06 | 株式会社リコー | 会議サーバ装置、プログラム、情報処理方法、及び会議システム |
JP5815664B2 (ja) * | 2013-12-26 | 2015-11-17 | ファナック株式会社 | 無線加速度センサを有するロボットシステム |
CN104015190B (zh) * | 2014-05-13 | 2016-04-13 | 中国科学院力学研究所 | 一种不确定双向时延条件下的机器人远程控制方法和系统 |
JP5855170B2 (ja) * | 2014-06-24 | 2016-02-09 | マイクロ モーション インコーポレイテッド | 相対時間タイマーを備えた送信機 |
KR101785821B1 (ko) | 2016-01-04 | 2017-10-16 | 엘에스산전 주식회사 | 시리얼 통신의 프레임 수신 모니터링 방법 |
CN109070345B (zh) * | 2016-02-23 | 2021-08-06 | Abb瑞士股份有限公司 | 机器人控制器系统及方法 |
JP6165286B1 (ja) * | 2016-02-29 | 2017-07-19 | 株式会社安川電機 | モータ制御システム、ロボットシステム、及びモータ制御システムの通信方法 |
CN107972024A (zh) * | 2016-10-24 | 2018-05-01 | 深圳光启合众科技有限公司 | 机器人及应用在机器人上的数据处理方法和系统 |
JP6426781B2 (ja) | 2017-03-08 | 2018-11-21 | ファナック株式会社 | 機械システム |
JP6605638B2 (ja) * | 2018-02-02 | 2019-11-13 | 本田技研工業株式会社 | 制御処理装置 |
CN111376259A (zh) * | 2018-12-30 | 2020-07-07 | 深圳市优必选科技有限公司 | 一种数据发送周期的确定方法、装置、存储介质及机器人 |
JP6826644B1 (ja) * | 2019-09-19 | 2021-02-03 | 日本金銭機械株式会社 | 情報処理装置及び情報処理システム |
JP7512153B2 (ja) | 2020-09-28 | 2024-07-08 | ニデックインスツルメンツ株式会社 | エンコーダ、およびエンコーダの通信制御方法 |
Family Cites Families (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS60177888A (ja) * | 1984-02-22 | 1985-09-11 | フアナツク株式会社 | 視覚センサ処理装置とロボツト制御装置との結合方式 |
US4975856A (en) * | 1986-02-18 | 1990-12-04 | Robotics Research Corporation | Motion controller for redundant or nonredundant linkages |
US5036334A (en) * | 1990-02-08 | 1991-07-30 | The Research Foundation Of State University Of New York | Lightning direction finder controller (LDFC) |
US5481675A (en) * | 1992-05-12 | 1996-01-02 | International Business Machines Corporation | Asynchronous serial communication system for delaying with software dwell time a receiving computer's acknowledgement in order for the transmitting computer to see the acknowledgement |
US5682460A (en) * | 1994-08-29 | 1997-10-28 | Motorola, Inc. | Method for selecting transmission preferences |
JP3421191B2 (ja) * | 1996-04-23 | 2003-06-30 | 三菱電機株式会社 | ロボット制御装置およびそのデータ通信方法 |
JPH10275006A (ja) * | 1997-03-31 | 1998-10-13 | Tokico Ltd | 工業用ロボット |
JP2959534B2 (ja) * | 1997-08-25 | 1999-10-06 | 日本電気株式会社 | 多関節ロボット用制御装置 |
JP3919040B2 (ja) * | 1997-11-30 | 2007-05-23 | ソニー株式会社 | ロボツト装置 |
US7020701B1 (en) * | 1999-10-06 | 2006-03-28 | Sensoria Corporation | Method for collecting and processing data using internetworked wireless integrated network sensors (WINS) |
US7031288B2 (en) * | 2000-09-12 | 2006-04-18 | Sri International | Reduced-overhead protocol for discovering new neighbor nodes and detecting the loss of existing neighbor nodes in a network |
DE50205022D1 (de) * | 2001-03-22 | 2005-12-29 | Siemens Ag | Verfahren und elektronischer schaltkreis für eine skalierbare kommunikationsschnittstelle in automatisierungskomponenten |
US7882253B2 (en) * | 2001-04-05 | 2011-02-01 | Real-Time Innovations, Inc. | Real-time publish-subscribe system |
GB0130812D0 (en) * | 2001-12-22 | 2002-02-06 | Koninkl Philips Electronics Nv | Messaging arrangement |
JP2003323687A (ja) * | 2002-05-08 | 2003-11-14 | Yaskawa Electric Corp | マルチドロップタイプエンコーダのアドレス設定方法 |
JP4254321B2 (ja) * | 2003-04-15 | 2009-04-15 | 株式会社ニコン | エンコーダ装置、ロボットシステム |
JP2004318439A (ja) * | 2003-04-15 | 2004-11-11 | Sendai Nikon:Kk | エンコーダ装置、ロボットシステム |
JP2004351551A (ja) * | 2003-05-28 | 2004-12-16 | Seiko Epson Corp | ロボットの制御装置およびロボットの制御方法 |
-
2005
- 2005-08-01 JP JP2005223512A patent/JP2007038326A/ja active Pending
-
2006
- 2006-08-01 US US11/989,606 patent/US20100094462A1/en not_active Abandoned
- 2006-08-01 CN CNB2006800279333A patent/CN100534730C/zh not_active Expired - Fee Related
- 2006-08-01 WO PCT/IB2006/002097 patent/WO2007015145A2/en active Application Filing
- 2006-08-01 JP JP2007549982A patent/JP4762999B2/ja not_active Expired - Fee Related
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110220458A (zh) * | 2018-03-01 | 2019-09-10 | 欧姆龙株式会社 | 测量系统以及测量方法 |
US11307023B2 (en) | 2018-03-01 | 2022-04-19 | Omron Corporation | Measurement system and method thereof |
Also Published As
Publication number | Publication date |
---|---|
CN101232977A (zh) | 2008-07-30 |
JP4762999B2 (ja) | 2011-08-31 |
JP2007038326A (ja) | 2007-02-15 |
JP2008526536A (ja) | 2008-07-24 |
US20100094462A1 (en) | 2010-04-15 |
WO2007015145A3 (en) | 2007-04-26 |
WO2007015145A2 (en) | 2007-02-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN100534730C (zh) | 机器人控制系统 | |
CN101233460B (zh) | 机器人控制系统和用于机器人的控制方法 | |
CN107092568B (zh) | 在低功耗系统中处理数据的数据通信接口 | |
WO2013127273A1 (zh) | 机动车辆轮胎压力监测系统传感器的设定方法、传感器及传感器设定器 | |
CN101739594A (zh) | 基于传感器虚拟电子数据表自描述的传感标签系统 | |
CN103677869A (zh) | 无线传感器网络节点远程代码更新系统及方法 | |
CN104395845A (zh) | 控制装置 | |
US9558382B2 (en) | Method for an acquisition of data from external digital sensors with an RFID smart tag and a tag integrated circuit for carrying out said method | |
US20180267711A1 (en) | Slave device, control method of slave device, non-volatile computer readable recording medium | |
CN109873722B (zh) | 固件远程升级方法、装置、计算机设备及存储介质 | |
CN104375952A (zh) | 一种从环形缓冲区读取数据的方法 | |
CN103106166A (zh) | 一种协议无关、可支持目标读写操作的pcie ip核用户逻辑接口设计方法 | |
US8274374B2 (en) | Synchronization method between reader and tag | |
CN104133790A (zh) | 用于直接存储器访问控制器的条件链接 | |
CN110032532B (zh) | 一种基于定时中断触发的主从式串口通讯方法 | |
WO2016024483A1 (ja) | アナログ/ディジタル変換回路 | |
CN111033401B (zh) | 控制装置、控制系统、控制方法以及控制程序的记忆媒体 | |
JP7143646B2 (ja) | Rfid通信ユニット、rfid通信ユニットの制御方法、およびプログラム | |
JP2007025120A (ja) | 無線端末装置、文字データ表示方法及びプログラム | |
US11831402B2 (en) | Slave equipment, computer readable medium, and embedded system | |
CN102668378A (zh) | 信息处理装置或信息处理方法 | |
CN104155891A (zh) | 基于i2c的网络化变送器及其通信实现方法 | |
CN108845765A (zh) | 一种nand数据读取方法、系统、设备及存储介质 | |
US9898002B2 (en) | Method for operating a fieldbus protocol capable field device | |
CN112698801B (zh) | 电梯显示面板显示的方法、电子设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
C17 | Cessation of patent right | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20090902 Termination date: 20120801 |