ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

板球控制系统机械设计实战:从结构选型到装配调试

板球控制系统机械设计实战:从结构选型到装配调试 从2017年电子设计大赛B题一路走过来的队伍多半都有同一种体会视觉识别、控制算法、PID调参每一块都能让人熬掉几斤头发但最后真正决定你能不能拿奖的往往是最不起眼的机械平台。那一届比赛结束后我复盘了很久才想明白板球控制系统这个题目里机械结构不是“搭个架子把舵机和板子装上就行”而是一个直接影响控制精度、调试效率和比赛稳定性的核心子系统。很多队伍软件调得天花乱坠一到实物联调就露馅问题恰恰出在那些肉眼难以察觉的机械间隙、重心偏移和材料变形上。这篇文章专门讲板球控制系统里的机械设计部分。我会把当时从方案选型、零件加工到现场装配、故障排查的全过程拆开细讲包括一些平时课程设计里不会写、但赛场上一定能用到的细节。无论你是正在备赛的在读学生还是对这类小型机电系统感兴趣的爱好者这篇内容都能帮你少走不少弯路。先提醒一句机械部分动手越早越好。别等视觉、控制全部写通了再回头补机械那大概率会赶在比赛前最后几天推倒重来我们就是这么过来的。1. 方案定型之前先把机械拓扑关系想清楚1.1 二自由度平台的结构选型十字轴加万向节为什么成了主流板球控制系统的核心是一个能在两个正交方向上倾斜的平板让球在平面上滚到指定位置。听起来不复杂但实现“两个方向独立倾斜”这个动作机械上其实有好几种玩法球形铰链加双连杆、双舵机直接倾斜、并联机构、十字万向节加双舵机等。我用排除法一个个说。球形铰链加双连杆的方案结构上更接近串联机器人视觉上也很直观两个舵机通过连杆推动平板。问题在于连杆机构的角度耦合非常严重X轴和Y轴的动作会互相干扰。你调X轴时Y轴角度会跟着跑控制算法的解耦工作就变成了噩梦。比赛时间有限这种方案在赛场上基本是给自己挖坑。双舵机直接倾斜平板也就是两个舵机分别放在X和Y两个方向直接推动平板边沿。优点是结构极简、传动链短、间隙少缺点是平板的受力点通常在边缘舵机需要承受较大的偏心力矩而且两个方向的转动中心很难保证交于一点容易出现“跷跷板”式的晃动。并联机构比如三自由度或六自由度平台控制精度确实高但体积、重量、加工难度都上来了对四天三夜的比赛来说性价比太低。最后是所有拿奖队伍几乎一致的选择十字万向节加上双舵机。具体结构是一个万向节支撑在平板中央X方向舵机控制平板绕X轴旋转Y方向舵机控制绕Y轴旋转两个旋转轴在万向节中心正交。这种方案的机械解耦性好X、Y两个方向的运动互不干扰控制算法可以直接按两个独立的单轴系统来处理。万向节本身有轴承支撑摩擦小、间隙可控平台晃动也小非常适合做高灵敏度的板球系统。用一句话总结十字万向节方案是“机械结构为控制系统让路”的典型案例。你把机械的耦合问题解决在结构层面后面写PID的时候会轻松得多。1.2 舵机直驱还是连杆传动力臂、扭矩和响应速度的权衡十字轴线确定之后还需要决定舵机怎么驱动两根轴。这里有两派做法一派是舵机输出轴直接固定在万向节的两个旋转轴上另一派是舵机通过连杆、拉杆或皮带间接驱动。直驱的优点很多。没有中间传动件就没有额外间隙机械响应直接控制延迟低舵机输出的角度就是平台的实际倾斜角度误差模型简单。缺点是万向节中心到舵机输出轴之间的距离往往是固定的这就意味着舵机的安装位置必须很精确否则轴会产生径向力舵机齿轮很容易磨损或扫齿。连杆驱动的优点是舵机可以放在离万向节更远的位置通过力臂设计获得更大的扭矩或更精细的角度分辨率。比如舵机臂10mm平台连接点20mm那平台角速度减半但力矩翻倍。缺点是连杆本身会引入间隙球头拉杆的虚位在运动中会被放大导致控制末端抖动这个在高增益控制下特别致命。我的建议很明确比赛项目用直驱。B题的平板面积不大乒乓球重量只有不到3克重心偏移量也很小对扭矩的需求并不高相反系统的响应速度和精度才是决定因素。直驱省掉了传动间隙这个最难补偿的不确定项你只需要保证装配精度就能把机械对控制系统的干扰降到最低。如果确实因为空间、结构限制必须用连杆记得选用带锁紧螺母的鱼眼球头拉杆并且选择带轴承座的舵机臂尽量消除虚位。另外赛前一定要做一次全行程测试确保拉杆在极限位置不会卡滞或脱出。1.3 扭矩估算别被舵机标称扭矩骗了关于舵机选型很多队伍直接按“越大越好”的原则来结果平台做得又重又笨响应速度反而变差。也有队伍选小了球稍微偏离中心就推不动。这里需要做一个简单的计算。以典型的0.1kg平台加上0.1kg球为例平板半径大约0.15m球在边缘时对万向节中心的重力矩大约为0.2kg × 9.8m/s² × 0.15m ≈ 0.3N·m。考虑到球的滚动惯性、平台加速时的动态力矩以及摩擦力矩的不确定性工程上通常按2到3倍安全系数取。也就是说舵机的峰值扭矩最好在0.6到0.9N·m以上对应常见的MG996R约1.2N·m或类似级别的数字舵机就足够。这里有个容易忽略的点舵机标称扭矩一般是堵转扭矩或峰值扭矩持续工作时的输出能力只有标称的50%到70%。赛场上如果连续长时间高速运动舵机内部温度上升输出扭矩还会进一步下降。所以如果平台结构较重建议直接选20kg级别的金属齿轮数字舵机留足余量。我还想强调一个反常识的事实在板球系统里扭矩过大的舵机未必是好事。大扭矩舵机通常体积大、重量大如果安装在平板上或靠近万向节的位置会增加转动惯量导致系统响应变慢反而让PID参数难调。所以选舵机的原则是“刚好够用略有余量”而不是越大越好。2. 核心部件的选材、加工与装配细节2.1 平板选材重量、刚性、摩擦系数的三角平衡平板是整个系统中直接与球接触的部件它的物理特性直接影响控制效果。理想平板应该满足三个条件重量轻降低惯量、刚性好受力不变形、表面摩擦系数适中且均匀。先说重量。平板越轻系统转动惯量越小舵机越轻松动态响应越快。但太轻意味着薄薄了就刚性差板子中间会下陷球滚到不同位置时倾斜角度会不一样这对控制的致命性是巨大的。再说刚性。万向节支撑在平板中心球在边缘时会给平板一个弯矩。如果板材弹性模量不够平板会弯导致板面不再是平面球的运动轨迹就会变得不可预测。我见过用2mm亚克力板做平台的队伍球到边缘时板面明显下弯整个控制算法直接失效。最后说摩擦系数。摩擦太小球像溜冰一样控制不住摩擦太大球低速时容易粘滞表现为启动困难、移动不跟手。而且摩擦系数必须均匀表面不能有凹陷、凸起或者油渍。实际对比下来3mm到5mm的玻纤板或碳纤维板是性价比最高的选择。这两种材料硬度高、质量轻、表面平整而且绝缘、不反光对视觉识别也友好。如果条件有限用3mm铝合金板也可以但一定要确保表面做阳极氧化或贴一层哑光膜否则反光会在摄像头画面里造成高光区域。不建议用3D打印的PLA板表面有层纹摩擦系数不均匀而且温度稍高就容易变形。也不建议用亚克力太脆、太软加工时容易裂。没有碳板的话玻纤板在某宝上很便宜几十块钱就能买到一块A4尺寸的足够比赛用了。2.2 万向节的设计与选型成品买件可能比自制更靠谱万向节是整个机械结构的灵魂零件。它决定了两根旋转轴是否正交、交点是否固定、转动是否顺滑。一个劣质万向节会引入大量间隙和死区控制算法再高级也救不回来。在备赛时很多队伍第一反应是“自己设计一个十字轴结构”用两根轴穿过一个中心块再用轴承座固定。这确实是可实现的方案但加工精度要求很高两根轴必须严格垂直且必须相交于同一点。如果用普通电钻手工钻孔很难达到这个精度装好后你会发现转动时中心点会画圈平板的倾斜角度与舵机角度对不上。我的建议是优先考虑成品万向节。市场上能买到一些航模、云台用的金属万向节轴径从4mm到10mm都有价格在几十到一百多不等。这些成品的加工精度和轴承质量都优于手工自制选用时注意两点一是轴径要能匹配舵机输出轴和安装孔二是两个方向的活动角度要能满足平台倾斜需求。如果非要自制加工方法很重要。不要用电钻手打孔最好找有小型车床或铣床的实验室加工中心或者淘宝找CNC加工把十字轴的两个轴一次性装夹加工保证垂直度。轴与座之间用滚珠轴承而不是直接金属摩擦否则磨损后间隙会越来越大。万向节与平板的连接方式也值得注意。最稳的方式是在平板中心开一个沉头孔用一根短轴从下方穿入万向节的顶端再用锁紧螺母固定。或者是用一个小的法兰盘用4颗螺丝把万向节固定到平板底面。无论用哪种都要在平板中心做个定位标记安装时用游标卡尺量好偏移量保证万向节旋转中心与平板几何中心重合。2.3 舵机的安装方式固定座的刚性与位置精度同样重要舵机安装这个环节很多队伍容易敷衍。图省事就用热熔胶直接粘在底座上或者用扎带绑住。第一次调试可能没问题但连续跑几圈后热熔胶会因为舵机发热变软舵机位置发生微米级别的偏移积累起来就是肉眼可见的机械零漂。到比赛现场你会发现零点一直在变调好的PID程序完全失效。正确的做法是设计一个专用的舵机固定座。固定座可以用铝合金CNC加工也可以用多层玻纤板或亚克力板叠加粘接。关键指标是刚性足够高不能让舵机在高扭矩下发生扭转。舵机壳体是塑料的固定座与壳体之间的接触面积越大越好最好能用螺丝直接锁在舵机的耳朵孔上而不是靠摩擦力卡住。安装位置精度上舵机输出轴必须与万向节对应旋转轴严格同轴。这个“同轴”不是目测一下就行而是要在装配后用塞尺或千分表检查。如果不同轴舵机转动时会受到径向力轻则转动不顺、产生异响重则直接扫齿或烧毁舵机。检测方法很简单用手轻轻拨动舵机臂感受是否有周期性卡顿如果有多半就是轴系不对中。舵机的固定螺丝一定要用金属螺丝别用塑料自攻螺丝。塑料自攻螺丝在长时间振动后会松动带来间隙。上螺丝时建议加一点中强度螺纹胶蓝色那种既能防松又不会像高强度螺纹胶那样以后拆不下来。2.4 球体选择乒乓球不是唯一答案比赛验证的坦克球更稳很多人提到板球系统第一反应就是用乒乓球。乒乓球确实便宜、轻、视觉上白色明显但它有两个很头疼的问题一是太轻系统响应太快控制稍有延迟球就滚飞了二是表面太光滑且极其容易受空气流动影响调试时有人从旁边走过带起一阵风球就莫名其妙滚跑了。在多次实测后我们发现比赛中最稳定的球体是“坦克球”也就是坦克世界周边那种PVC硬塑料球直径大约40mm重量比乒乓球重一些表面是光滑但有细微磨砂感滚动阻力适中。这种球的优势是重量足够大系统惯性更强控制算法有足够的时间窗口做反馈修正而且不容易被微小的外界干扰影响。如果没有坦克球也可以用高尔夫球替代。高尔夫球表面有凹坑滚动轨迹稳定重量也够大但表面凹坑可能对视觉特征提取造成困扰而且反光明显需要配合光源调整。球体选定后还要做一件事检查球体是否完全圆。拿游标卡尺在多个方向量直径偏差超过0.5mm的球不能用否则球每滚一圈平板的实际倾斜角度都在变化控制效果会非常奇怪。这场比赛的经验告诉我备赛时最好准备两三个同批次、同型号的球赛前统一量过中途换球对系统和参数的影响完全可接受。2.5 底座与重心设计稳是机械设计的另一个关键词底座的任务是承载整个机械系统的重量并且把振动和扰动隔离掉。底座设计得当控制系统就相当于工作在静止平台上设计不当舵机一动作整个底座都在晃视觉摄像头跟着抖这个系统的噪声就大了。底座选材上用铝合金板或者厚亚克力板都可以关键是重量要够。一个大约1kg到1.5kg的底座能让系统重心足够低稳固性大幅提升。有些队伍把底座做得很轻比赛时桌子别人碰一下板球系统就像地震一样球瞬间滚到边缘。在底座四个角的位置建议加上硅胶防滑垫或者橡胶脚垫可以吸收高频振动。如果比赛场地桌面本身有点不平可以在其中一个脚垫下垫一层薄片微调水平。底座上还要预先规划好电源模块、主控板、摄像头的安装位置尽量让线缆走线规范别让电源线压在机械活动部件下面否则运动中线缆被拉扯轻则断电重则把板子拽翻。重心设计上整个系统的重心越低越稳。舵机如果装在万向节上方或者侧上方会抬高系统重心平台稍微一动就容易晃。合理布局应该是把舵机放在平台底部框架的两侧用U型架或L型支架过渡到万向节轴。整个机械装置的高度尽量控制在150mm以内这样重心低、结构紧凑视觉摄像头也可以更靠近板面识别精度更高。3. 装配流程与机械调试实录3.1 正确的装配顺序很多机械问题都是装出来的机械装配这件事顺序不对会浪费大量时间。我建议按“从上到下、从内到外”的顺序来装具体流程是这样第一步先把万向节固定在平板底部。注意此时不要锁死螺丝留一点调整余量为后续校准中心位置做准备。第二步把万向节的下端固定在底座支架的横梁上同样不要完全锁死。此时用手转动平板检查两个方向的转动是否顺滑是否有卡滞。如果转动时某一方向有明显阻力多半是万向节轴系不正或者是轴与轴承座之间有毛刺需要先处理干净。第三步安装舵机到固定座把舵机输出轴与万向节转轴连接。这里要强调连接时最好先用一块水平泡或者用手机上的水平仪应用把平板调到近似水平位置然后再锁紧舵盘螺丝。这样可以保证上电时的机械零位接近水平减少软件调零的负担。第四步全部锁紧后再次手动转动平板确认每个方向的阻力均匀、没有异常声响。如果听到“嘎吱”声八成是螺丝没拧平、轴承有杂质、或者舵机输出轴被径向力压住了。最后一步连接舵机线缆并做一次简单的上电测试。给舵机发一个中位信号观察平板是否大致水平测量X、Y两个方向的最大倾角是否满足控制需求。如果最大倾角太小说明结构上有限位干涉需要做调整。3.2 消除间隙机械死区是控制系统最大的“隐形敌人”机械间隙在板球控制系统里表现成这样的现象你要舵机转动1度舵机确实转了但平板因为没有跟着转球没有动等你再把角度加到2度平板才突然开始动。这个2度范围内的空行程就是机械死区。死区对闭环系统是非常危险的它相当于在反馈回路里插入了一个非线性环节会让PID控制在小偏差时无法作用导致球始终在目标点附近小幅徘徊无论怎么调参数都消除不了。减少机械死区要分几个环节入手。万向节内部的轴与轴承配合要选择过渡配合或小过盈配合如果有间隙可以在装配时垫一层薄薄的特氟龙胶带。舵机输出轴与舵盘之间用金属舵盘加花键配合锁紧螺丝时要注意对角均匀用力。舵盘与万向节转轴之间的连接如果是用紧定螺钉顶在轴上一定要在轴上磨一个小平面否则紧定螺钉只是点接触时间长了还是会滑脱。这里想说一个我做过的实测对比同样是停止状态下有间隙的平台用手轻轻晃动时能感觉到平板的摇晃量大约有0.5到1.5度而无间隙版本的平台晃动几乎察觉不到。后来在控制参数上有间隙版本只能把PID的比例系数调到8到10再大就会震荡而无间隙版本可以调到20以上还能稳定运行。这就是机械精度对控制系统上限的巨大影响。3.3 摩擦、润滑与线缆管理看不见的细节决定了调试体验机械平台里存在多个摩擦副包括万向节轴承、舵机齿轮、轴与支架的接触面。摩擦力矩过大会带来两个问题一是舵机需要更大的电流才能转动供电不足时电压跌落系统会抽搐二是摩擦力矩会随温度和磨损变化导致控制模型的参数时变PID很难适配。处理摩擦的有效手段是润滑。万向节轴承处加少量锂基润滑脂或者帝磨润滑油都可以但要注意不要加太多多余的油可能滴到平板上改变摩擦系数那就是灾难。舵机内部齿轮是出厂自带润滑的不要在装配时再往齿轮上涂油容易沾染灰尘反而加速磨损。线缆管理也很关键。舵机线如果绑得太紧线缆本身就会成为一种非线性弹簧舵机转动时被线缆拉拽产生额外的阻力。更严重的是如果线缆没有留够松动余量在反复运动拉伸后内部铜线会疲劳断裂表现为舵机偶发性掉电、不响应这种问题排查起来极费时间。正确做法是给舵机线留足够长的弯曲余量并且用编织管或热缩管保护在线缆进入底座的地方做应力释放。3.4 调零与重心校准上电之前必须完成的“外科手术”机械调零是上电前的一个重要环节但很多队伍都忽略或者草草带过。所谓调零就是把舵机中位对应的平板物理零点找到并固定下来。如果这个零点偏了控制程序里就要用一个很大的偏移量去补偿而且这个偏移量在运动过程中可能因为重力作用而漂移Bug会非常隐蔽。调零的具体操作是在组装前先给舵机上电并发送中位PWM信号让舵机回到中位然后手动把舵盘装到舵机输出轴上让舵盘与万向节轴的连接点正好处于水平状态的位置再锁紧舵盘螺丝。这个步骤一定要在舵机通电的情况下做而不是断电后手动转到中位位置再装因为舵机的中位是靠内部电位器决定的断电后手动转动会造成偏移。重心校准则是在整个系统组装完成后做。把系统放在水平桌面上不给舵机通电用手把平板调到大致水平然后松手。如果平板自己会缓慢偏向某一侧说明重心不在万向节中心的正下方或正上方需要对配重进行微调。最常见的方法是加重在偏离反方向的合适位置粘贴配重块或者调整电池、主控板的位置直到平板松手后能保持静止。4. 赛场实战常见机械故障与排查清单4.1 高频抖动先查机械共振再谈PID参数比赛现场最让人崩溃的现象是平板在高频轻微抖动球像“筛糠”一样在板面上跳舞根本没法定位。很多队伍第一反应是PID参数没调好但实际情况是有一部分抖动来自机械共振。判断方法很简单把PID增益全部降为零只给舵机发送一个固定的中位信号用手敲击桌面或底座观察平板是否出现持续的、幅度逐渐衰减的振荡。如果振荡持续时间很长说明机械阻尼不足比如万向节轴承间隙大、舵机安装座刚性不足、或者平板太薄导致弯曲模态频率太低。解决思路有两个方向。一是在机械上增加阻尼比如在底座和桌面之间加一块硅胶垫吸收高频振动或者是在平板边缘加一个小质量的配重改变系统的模态频率让共振点避开控制带宽。二是在控制上降低高频增益也就是把PID中的D项调小一点或者加入低通滤波器。如果机械方案合理一般在控制端只需要做很小调整就能消除振荡。4.2 单轴卡滞与异响轴承、齿轮和轴系的“体检”顺序现场出现“X方向正常、Y方向卡顿”的情况大多数不是控制问题而是机械问题。排查顺序建议是先用手转动万向节感受Y方向轴的阻力是否均匀。如果阻力很大检查轴承是否缺油、是否有异物进入。如果没有异物再检查舵机把舵机与万向节断开单独给舵机发信号听齿轮转动是否有“咔咔”声。如果舵机单独转动正常问题就在舵机与万向节连接的环节多半是轴不对中或者舵盘紧定螺钉压偏了。异响还有一个常见来源是螺丝松动。在持续的振动下所有螺丝都会缓慢松动尤其是没有加螺纹胶的金属螺丝。比赛期间我养成了一个习惯每跑完一轮就检查一遍所有可见螺丝尤其是舵机固定座和万向节连接处的螺丝。这种维护虽然枯燥但能避免很多临场故障。4.3 零点漂移换电池后球老是偏你该先量机械零位比赛现场换电池是很常见的操作但换个电池就发现球往一个固定方向偏这时候很多队伍会以为是程序跑飞了。实际上换电池导致舵机供电电压略微变化舵机内部电位器的非线性会让中位产生一点点偏移这个小偏移在机械零点没有任何问题时是可以被控制程序实时纠正的但如果机械零点本身就有点偏系统就会表现出明显的定向漂移。处理方案是赛前把系统的软件零点校准功能做好准备一个能一键保存零点偏移量的骚操入口。比赛现场换了电池或者换了球之后先放一个球在中心用一个简单的测试程序确认球是否停在中心不在的话执行一次零点校准然后重新加载。整个过程应该在30秒内完成。我见过一支队伍在赛场上花了一个小时排查漂移问题最后发现就是机械固定螺丝松了零点已经偏了3度。所以比赛前把所有关键连接螺栓重新拧紧一遍特别是万向节、舵盘、固定座这几处是每天比赛开始前最值得花的三分钟。4.4 常见问题速查表现象可能原因快速排查方法现场处理平板高频抖动机械共振、轴承间隙、PID增益过高降PID增益后观察是否消失加硅胶减振垫、减小D项单轴卡滞轴承缺油、齿轮扫齿、轴系不对中断开舵机后手动转动轴系加油、更换舵机、重新对中球总是往一个方向偏机械零点偏移、重心偏、球不圆用水平仪检查平板、测球径重新调零、加配重、换球舵机发热严重堵转、电压不足、扭矩余量不够测供电电压、摸舵机温度降低负载、分级供电螺丝反复松动未加螺纹胶、振动过大拧紧后标记位置尝试一次运行加螺纹胶或弹簧垫圈突然断电不响应线缆疲劳断裂、电调过流保护检查舵机线、测量供电更换线缆、调整供电线路4.5 赛场应急工具箱这些备件能救你一命比赛现场不可能有完整机加工条件所以备件要在出发前备齐。我按重要性从高到低列一份清单至少备用一个同型号舵机舵机扫齿或烧毁是现场最灾难性的故障而这又是最容易发生的。备用舵盘和紧定螺丝舵盘比舵机更容易坏尤其塑料舵盘在猛烈撞击后会裂。热熔胶枪和棒现场应急固定线缆、临时加固结构都靠它。但你心里要清楚这只是临时方案赛后还是要用螺丝正式固定。螺纹胶中强度所有螺丝的防松都靠它这玩意儿体积小、重量轻但作用巨大。小锉刀、砂纸、美工刀处理毛刺、修整塑料毛边、调整配合公差用。游标卡尺装配和检测时随手量尺寸别相信眼测。万用表排查舵机供电电压、线缆通断问题必备。只要这几样东西在大多数机械故障在比赛现场都能在半小时内修复或临时绕过。如果缺了其中某一样比如备用舵机没带现场一旦扫齿基本等于退出一等奖争夺。这个问题真的不是玩笑是身边队伍的真实教训。最后再分享一个细节整个比赛做下来我最深的体会是软件调参是显性的工作量机械设计是隐性的工作量。显性的工作容易被看见、被讨论所以大家都扑在上面隐性的工作没做好别人看不出来但结果会让所有显性的努力都白费。板球控制系统的机械部分不需要多么高端的加工工艺也不需要用多昂贵的材料它真正考验的是你对精度的敏感度以及对“传动链中每一个环节都可能引入误差”这件事的敬畏。如果再给我一次备赛机会我会把开赛前两周的周末完全留给机械用CAD把每个零件的装配关系画出来模拟一遍装配顺序然后把所有需要锁紧的位置先做一遍预装配最后再拆开分装打包。比赛那几天就是纯粹的主控和算法时间而不是拿着电钻在场上打孔。如果你正在备赛或者打算挑战下一届的类似题目请记住写代码前先把那根万向节轴线量准了调PID前先确认平板在自由状态下是水平的。机械的每一分准确最后都会以控制的每一分从容回报给你。
返回列表