CS机器人抖动排查
1.简介
本文将介绍如何排查机器人抖动问题
2.机器人运动轨迹抖动排查
2.1 机器人螺丝松动
检查机器人【jī qì rén】本👹体上的螺丝是否松动【fǒu sōng dòng】🥘或丢失🤺、机器人【jī qì rén】末端的工具是🔉否有松⏰动【dòng】🥘,工作台【gōng zuò tái】是否本【shì fǒu běn】📒身就抖动【dòng】🥘,机器人【jī qì rén】会因为震动【dòng】而📟对紧固件产生【jiàn chǎn shēng】振动【zhèn dòng】🥘,长时间【zhǎng shí jiān】运动【dòng】🥘后螺丝可能会【kě néng huì】松动或【sōng dòng huò】者💶丢失🤺,导致机器人【jī qì rén】抖动【dòng】🥘。如图2-1-1所示机器人【jī qì rén】本👹体与底⛵座的螺丝松动【sī sōng dòng】🕞。

图2-1-1
2.2 设置负载数据不正确
检查负🖐载数据📛过高或过低【guò dī】、重心是否设置正确,设置的【shè zhì de】🥓数据与【shù jù yǔ】实际差异太大【yì tài dà】可能会🔈引起抖🤩动⚓!如图【rú tú】2-2-1所示查看负载【kàn fù zǎi】设置的【shè zhì de】🥓是否正确。

图2-2-1
2.3 速度设定不合理
速度【dù】👧设置不合理会【hé lǐ huì】造成机械手运动不流【dòng bú liú】畅,或加速度【dù】👧变化过大引📎起机器【qǐ jī qì】人震动【rén zhèn dòng】,因此,在机器【zài jī qì】🛄人速度【rén sù dù】👧设置中🍥要合理,直线速🎚度建议【dù jiàn yì】加速度【dù】👧最大【zuì dà】9000mm/s2 速度【dù】👧最大【zuì dà】1500mm/s ,一般加速度【dù】👧要是速【yào shì sù】度【dù】👧的【de】🍞3-5倍。 建议最🆙大关节速度【dù】👧150°/S 关节加【guān jiē jiā】速度【dù】👧1500°S²(应当根据两点【jù liǎng diǎn】🏵距离来调整速🤐度【dù】与加🛂速度【dù】👧,才能达到最优速度【dù】👧)如图2-3-1所示♌:
如果第一次接👊触漫蛙机器人,对速度🚓没有完全理解【quán lǐ jiě】可以参【kě yǐ cān】考以下推荐速【tuī jiàn sù】🐇度参数【dù cān shù】😆。
最大直👋线速【sù】度【dù】🔽1200mm/s,最大直👋线加速【xiàn jiā sù】🔭度【dù】🔴6000mm/s2,推荐直【tuī jiàn zhí】线加速【xiàn jiā sù】🔭度【dù】🔴3000mm/s。建议正常运行按照高📖速【sù】1000mm/s,6000mm/s2;中速【sù】600mm/s,3000mm/s2;低速【dī sù】250mm/s,1200mm/s2。

图2-3-1
2.4 本体硬件损坏
按住示教器背【jiāo qì bèi】面的自【miàn de zì】由驱动🎇按钮或🐽点击操作选项卡的📆“拖动”,手动拖动每个轴检查🔅是否有卡顿Ⓜ,无卡顿建议从【jiàn yì cóng】2.1-2.4步骤进【bù zhòu jìn】行排查【háng pái chá】,有卡顿Ⓜ大概率【dà gài lǜ】为碰撞【wéi pèng zhuàng】导致谐波减速【bō jiǎn sù】机【jī】,交叉滚📦子轴承🕶损坏【sǔn huài】👬,需联系漫蛙相♌关人员🐾进行本体的维修。
3.机器人点到点抖动排查
所谓的⭐点到点抖动【dòng】🗝就是机器人运动【dòng】🍇到目标【dào mù biāo】👐点后抖动【dòng】🗝,不是运动【dòng】🗝过程中【guò chéng zhōng】抖动【dòng】🗝
3.1 CR不为0 (转接半径【jìng】🐂),且后面有时间等待或【děng dài huò】🤲者条件🎼等待【děng dài】
只要CR不为【bú wéi】0 ,且后面有时间【yǒu shí jiān】😛等待或【děng dài huò】者条件🎒等待,机器人【jī qì rén】会转弯时快速【shí kuài sù】停止 ,也就是点到点【diǎn dào diǎn】🎞抖动【dǒu dòng】,不是运【bú shì yùn】😟动轨迹抖动【dǒu dòng】 ,然后就可能造【kě néng zào】🍨成其他报警【bào jǐng】🥪 ,抖动【dǒu dòng】造成的效🧤果类似🌔碰撞,长期这样也会🅾对减速器损伤🕺。如图3-1-1所示:

图3-1-1
3.2 程序中有死循环
检查程【jiǎn chá chéng】序中是【xù zhōng shì】否有死🎖循环【xún huán】会导致【dǎo zhì】💚机器人【jī qì rén】CUP过载🤤,CPU过载🤤也会导致【dǎo zhì】💚机器人【jī qì rén】抖动【dǒu dòng】,例如程【lì rú chéng】序中一直if循环【xún huán】判断且条🦋件多次不满足的时候程序会进入【huì jìn rù】📧死循环【sǐ xún huán】,使用线🏮程时线【chéng shí xiàn】🖕程中没有加等【yǒu jiā děng】🙈待时间【dài shí jiān】程序也会进入【huì jìn rù】📧死循环【sǐ xún huán】如图🧥3-2-1,应该在循环【xún huán】/线程中🐦加等待时间【dài shí jiān】避免出现🤒死循环【sǐ xún huán】CPU过载后🏪导致【dǎo zhì】机🚿器人点【qì rén diǎn】到点抖动【dǒu dòng】如图🧥3-2-2所示。

图3-2-1

图3-2-2
4.低频抖【dī pín dǒu】动抑制【dòng yì zhì】功能🍄(需在漫蛙技术【wā jì shù】💱人员带领下执🔫行)
如果通🆕过以上方法未排除出【pái chú chū】抖动【dòng】原因且手🔊动手动【dòng shǒu dòng】拖动无【tuō dòng wú】📁卡顿且【kǎ dùn qiě】机器人运动【dòng】轨🏏迹抖动【jì dǒu dòng】,可以试试通过🌈低频抖动【dòng】抑制功能使🎚机器人减少抖动【dòng】。
抑制功能说明🏢:低频抖动抑制【dòng yì zhì】🚪功能可👝以在一定程度【dìng chéng dù】上抑制【shàng yì zhì】🍈运行过【yùn háng guò】程中出【chéng zhōng chū】🤫现的持续抖动,从实现🔭方式上有【yǒu】🕐手动调整和自【zhěng hé zì】动抑制【dòng yì zhì】🚪两种,涉及到的参数有【yǒu】🕐:
Pn0C低频抖动抑制模式选择;
Pn30抖动抑😀制频率🌔 设定为【shè dìng wéi】测定出的持续【de chí xù】振动频【zhèn dòng pín】👆率🌔;
Pn31抖动抑制补偿【zhì bǔ cháng】 用于对🍦低频抖【dī pín dǒu】😡动抑制阻尼增益补偿【yì bǔ cháng】👝;
Pn32抖动抑【dǒu dòng yì】💜制阻尼 用于设🎈定低频【dìng dī pín】抖动抑【dǒu dòng yì】💜制的阻🎓尼增益。
通常在🈂出厂时,Pn0C 被设定【bèi shè dìng】为 0,即标准抑制【zhì】模式,振动抑制【dòng yì zhì】👅参数【shù】均由控制【yóu kòng zhì】 器下发。在后续【zài hòu xù】使用机【shǐ yòng jī】器人的过程中,若出厂🤰设定的【shè dìng de】默认参数对于【shù duì yú】🧤实际工🔸况下的😍 抖动抑制【dòng yì zhì】👅能力达不到特【bú dào tè】定需求时,则可通过调整伺服参🗓数【shù】Pn0C 进行自🤴动低频🐷抖 动抑制【dòng yì zhì】👅。
1.自动抑制:
目前有【mù qián yǒu】😓两种自适应抖动抑制模式🧣,均通过【jun1 tōng guò】设定【shè dìng】 Pn0C 进行模🖱式切换。
当Pn0C = 1 时启动自适应♈模式 1:该模式🈯下对特定💜频率施【pín lǜ shī】加参数【jiā cān shù】自适🌤应振【yīng zhèn】🏼 动抑制【dòng yì zhì】,适用于【shì yòng yú】👾对特定💜轨迹及速度不经常改变的情【biàn de qíng】况下,对于运【duì yú yùn】行抖动要求严【yào qiú yán】格 的场合💏;
当【dāng】⏸Pn0C = 2 时启动自适应模式♍ 2:该模式【gāi mó shì】♍下施加参数固🍎定的全时振动频率 自适应调整的【diào zhěng de】振动抑【zhèn dòng yì】制🌔,适用于🚨轨迹【guǐ jì】、运行速度都经常变化的场合🔷,此时对❤于特 定速度下的振【xià de zhèn】动抑制【dòng yì zhì】🌔强度通【qiáng dù tōng】常会略🧙弱于自【ruò yú zì】👮适应模式♍1。
操作步骤如图4-1所示:

图4-1
1.在正常模式下点击如🙈图【tú】4-1所示右🈁上角红框标注【kuàng biāo zhù】区域(连续快速点击 5-8 次【cì】🚙)就会出现输入密码🔹页面界【yè miàn jiè】🙌,然后输【rán hòu shū】入密码🔹:elibot,进入专【jìn rù zhuān】家模式。
2.选择伺服参数。
3.选择需要自动【yào zì dòng】抑制的伺服〰(比如一【bǐ rú yī】轴需要【zhóu xū yào】🤬抑制就💣选伺服〰1)。
4.找到【zhǎo dào】👉0x0C参数🎯,写入🗻1/2(输入自【shū rù zì】己想要的自适应模式【yīng mó shì】),然后退出即可。
在【zài】运行🏠了上述⭕自适应【zì shì yīng】低频抖动抑制功能后【gōng néng hòu】,伺服会自动学🚤习一组合适的抑制振【yì zhì zhèn】动的参数,此时需【cǐ shí xū】🦇要单次【yào dān cì】执行脚本🐗 joint_config_bind()进行数据保存,如图【rú tú】🔰4-2所示,脚本🐗执行完成【chéng】🏔后可以【hòu kě yǐ】在【zài】 下位机🍕中进行😘查看,路径为:/rbctrl/eli_robot_data/joint_bind.conf;

图4-2
2.手动抑制:
当通过【dāng tōng guò】自动抑【zì dòng yì】💉制功能仍然无【réng rán wú】法很好的抑制【de yì zhì】抖动时,此时可通过手动调整【dòng diào zhěng】伺服🥔 参数🚆Pn30~Pn32 进行抑⚾制,步骤如下🚹:
1.通过🍐EliteMain进行数【jìn háng shù】据采集并观察【bìng guān chá】🚨每个轴的转矩波形【bō xíng】,当波形【bō xíng】📞中出现 抖动较🎏大的情况时,测量该频率【pín lǜ】🐋;(EliteMain软件需联系漫蛙技术【wā jì shù】人员获取【qǔ】✖)
2.将测量出的频率值设定到伺【dìng dào sì】服参数Pn30 中🥥,Pn31 默认为【mò rèn wéi】 100,逐步增【zhú bù zēng】🤳加Pn32 的值📒;
3.在 0~200 的范围内以【nèi yǐ】 10 为单位【wéi dān wèi】🚋逐渐增大【dà】⛔ Pn32 的设定【de shè dìng】值,当🏓 Pn32 达到☝200 后仍然无法获【wú fǎ huò】得良好【dé liáng hǎo】的抑制效果时😊,此时需🧤要降低控制增🛁益【yì】( 0x10 // 速度环增益【yì】)。
4.在完成上述内【shàng shù nèi】容后,同时【tóng shí】🥔得到了合适的抑😒制参数时【shí】🥔,需要执【xū yào zhí】😍行脚本⛏joint_config_bind()进行数据保存,如图4-2所示【suǒ shì】🐮。
a.EliteMain使用方法:
1.根据需求选择💟对应的【duì yīng de】窗口📤,现需使【xiàn xū shǐ】用伺服😸参数【cān shù】。

图4-3
2.伺服参【sì fú cān】数界面操作流✔程【chéng】:(该界面可对关🐍节的伺🦀服参数【fú cān shù】进行读取⬆,修改,备份以及加载【jí jiā zǎi】)
1.点击上【diǎn jī shàng】👉图所示🍥的伺服参数【fú cān shù】按😷钮,进入伺🙄服参数【fú cān shù】界面,选择对应系列【yīng xì liè】的机器📆人【rén】(辅MCU无用,无需勾【wú xū gōu】选),如图4-4所示🙀:

图4-4
2.输入对【shū rù duì】应的IP地址【dì zhǐ】🌱,以及密码🃏:(cs密码🃏:elibot),如图【rú tú】4-5所示☕:

图4-5
监视数据:
功能【gōng néng】:其内主🔆要是对【yào shì duì】关节的【guān jiē de】✂力矩🧗,速度等【sù dù děng】信息的采集,主要分四个区【sì gè qū】🚅:网络连🌎接区🚅,类型选择区🚅,轴区以【zhóu qū yǐ】🥦及采集区🚅

图4-6
由图🚌4-6中的波【zhōng de bō】👥形图可知从波⚪峰到波谷的值【gǔ de zhí】已经超【yǐ jīng chāo】过200,说明三【shuō míng sān】轴确实🍌存在抖动。
操作方法:
1.选择对应系列的机器人(CS)
2.登录,输入所🚐对应的ip以及密码【mǎ】🔻(FB1网口【wǎng kǒu】,必须是【bì xū shì】🐯远程模式)
3.选择相对应的轴
4.在离线采集内,选择想要采取的内容
5.点击开始
6.转动对🕣应的轴,转动结束后【shù hòu】,点击停⭕止(需要放【xū yào fàng】❄大波形图才好分析,比如某个轴一直抖动🧑,那可以【nà kě yǐ】⬛不用采集太长【jí tài zhǎng】的时间,这样波【zhè yàng bō】💆形就会【xíng jiù huì】放大)
7.开始采集波形时【shí】,机器人会进入【huì jìn rù】🗃产测模【chǎn cè mó】式,调整参🏤数完成后需要🍼手动推【shǒu dòng tuī】出产测💭模式
b.频率计算:
由图【yóu tú】💤4-7放大后【fàng dà hòu】💿的波形【de bō xíng】图可知【tú kě zhī】:时间间隔是【gé shì】🏭 0.2s(横轴每💅一格子【zǐ】),0.2到0.4大概有5个电流周期🌠,1s有5个0.2s(横轴格💄子【zǐ】5个) ,那么这个频率【gè pín lǜ】的计算为🎒:5×5=25hz

图4-7
c.频率写入:
例如图【lì rú tú】4-7的波形图计算【tú jì suàn】出频率为25hz,机器人是以🥖0.1hz为单位【wéi dān wèi】🔞的所以需要写🕍入250到【dào】💔0x30中。

图4-8
1.在正常【zài zhèng cháng】♉模式下🏜点击如图4-8所示右上角红框标注区域【qū yù】(连续快【lián xù kuài】速点击 5-8 次)就会出现输入密码【rù mì mǎ】页面界😸,然后输😵入密码【rù mì mǎ】:elibot,进入专🤘家模式【jiā mó shì】🔆。
2.选择伺服参数。
3.选择需要写入✴频率的【pín lǜ de】伺服【sì fú】(比如😹3轴需要🙂抑制就选伺服【xuǎn sì fú】3)。
4.找到0x30参数,写入计算好的频率(单位🚹0.1hz)后观察【hòu guān chá】❗效果不【xiào guǒ bú】佳时【jiā shí】,逐步增加🖨Pn32 的值【de zhí】,Pn31 默认为🐗 100。
5.在【zài】 0~200 的范围内以【nèi yǐ】🐶 10 为单位逐渐增📇大【dà】 Pn32 的设定【de shè dìng】值,当🗳 Pn32 达到🧡200 后仍然【hòu réng rán】💴无法获得良好的抑制效果时,此时需要降低🌬控制增【kòng zhì zēng】🍱益(0x10 // 速度环增益【zēng yì】)。
3.新增高鲁棒性震动抑制:
在【zài】💹2.13.1版本抑制进行了优化,新增了【xīn zēng le】高鲁棒【gāo lǔ bàng】🐾性震动🎢抑制功🤾能,涉及参数【shù】Pn33,Pn34。
1、检查伺服是否【fú shì fǒu】为♏2.13.1及以上【jí yǐ shàng】版本💀;

2、在正常模式下【mó shì xià】点击如🗿图4-1所示右上角红🕥框标注💺区域🍥(连续快速点击 5-8 次💧)就会出【jiù huì chū】现输入🦁密码页【mì mǎ yè】面界【miàn jiè】,然后输【rán hòu shū】入密码:elibot,进入专家模式【jiā mó shì】;

3、由于CS控制器【kòng zhì qì】上电后【shàng diàn hòu】会自动下发部🕦分参数🔆,因此使🌻用该固件时【jiàn shí】,需要在【xū yào zài】😑伺服参数页面将【jiāng】📦“使用内部参数【bù cān shù】"勾选;,选择需要抑制🐓的伺服(比如一轴需要【zhóu xū yào】🍣抑制就选伺服1);

4、初期调【chū qī diào】🕡试将【shì jiāng】Pn32均设置【jun1 shè zhì】⛺为🚜0,如发生🌥无法抑制时,可进行【kě jìn háng】设定,否则保持为🚜0即可;

5、将【jiāng】Pn33设置为【shè zhì wéi】100,Pn34从0-300可调,用于调💂整抑制【zhěng yì zhì】强度🐠,通常设👳定在100;

6、调整好【diào zhěng hǎo】参数后,需要保🍉存【cún】🌧至伺服🖍,否则再次上电调整好【diào zhěng hǎo】的参数会丢失【huì diū shī】,Pn03参数写入📫5进行保存【cún】🌧,机器人显示待机状态【jī zhuàng tài】🈵说明保【shuō míng bǎo】存成功【cún chéng gōng】🐅。

5.常见问题解答
1.根据实【gēn jù shí】🎐际工具情况【qíng kuàng】🦖,合理设置机器🦔人负载数据【shù jù】。
2.要根据实际情况合理设定速度。
3.点位CR不为0 (转接半径),后面不💰能有时【néng yǒu shí】间等待🧢或者条【huò zhě tiáo】🖼件等待【jiàn děng dài】。
4.调试过【diào shì guò】🐞程中速度尽量放慢,碰撞检【pèng zhuàng jiǎn】测要打🚸开,避免发生碰撞机器人【jī qì rén】发生抖【fā shēng dǒu】🗺动💁。
5.运输过【yùn shū guò】🚍程中需🌨要机器🥟人的【rén de】2 3轴不要受力,有支撑【yǒu zhī chēng】⚡,合理的【hé lǐ de】打包姿态运输🌦能能够有效的🐨避免机器人抖动【dòng】。打包姿态如图【tài rú tú】3-1:

图5-1
6.开始采🧐集波形时【shí】,机器人【jī qì rén】会进入产测模式,调整参【diào zhěng cān】数完成🎌后需要🎆手动退🚓出产测【chū chǎn cè】模式
7.登录🗳,输入所【shū rù suǒ】对应的ip以及密码【mǎ】(FB1网口🦎,必须是🍇远程模式【shì】)