第46章 动作(2/2)

自从有了三次特殊的穿越经历后,罗平感觉除了那些关于未来的信息,自身不仅学习理解能力变强了,动手能力也提升不少,制造手表就是他的一次大胆尝试,所以他才有信心做一款与众不同的机器人。

网上关于编程的电子书有很多,他不急着自己写程序,通过学习基本的编程规则,对照陆伟几个人写出来的程序代码和注释去理解,琢磨他们的编程思路,看看有什么结构上的漏洞,能不能通过程序思路弥补当下的缺陷。

他不需要理解每一行代码的作用,只要能理解整体编程思路,部分代码的控制逻辑就行了,只实验了几次,他就知道整个控制程序还有很大问题。

计算机上模拟的验证环境太简单,很多实际情况罗平自己都没考虑到,陆伟他们更不可能通过程序完全模拟了。

程序通过控制不同骨骼内部的电磁铁通断电实现机器人动作,陆伟他们还是花了很多心思,通过测试电磁铁线圈电流和磁力变化曲线,写出了专门的控制函数,让电磁铁动作不那么猛烈,每一个动作几块骨头动作也写出一组组单独的动作函数。

游戏手柄上面一个简单的前进、后退、出拳、跳跃的操作,都要对应几十组不同动作函数组合使用,先后顺序,动作时间,循环次数等等,整个控制程序他们应该花了不少功夫。

不过,在罗平看来,这些还远远不够。

他设计的驱动核心是直流电磁铁,没有交变磁场,不用担心产生涡流,所以电磁铁的铁芯形状自由度很大。

为了更好的通用性,罗平根据行程把电磁铁线圈设计成了几种标准尺寸,行程大的骨头电磁铁都是多组线圈控制,确保有足够力量牵引骨骼动作。

尽管电磁铁只有通断电两种操作,可是动铁移动位置却不是只有左右或者上下两个顶端点位,而是可以在移动范围内任意一点停下,并且保持位置不动。

表现在机器人身上,就是可以保持任意姿势长时间不动。

这一点人类也可以做到,但是需要相应的肌肉持续发力,很消耗能量,罗平在电磁铁内部做了一个取巧的设计,电磁铁动铁只有在线圈通电的时候才能位移,线圈不通电的时候,动铁被卡死,这样就可以保持骨骼动作姿势的同时,不消耗多余的能量。

不过这样的设计也有弊端,就是机器人刚才实验表现出的状态,不管整体的结果,无论动作是否做到位,都严格按照指令执行,一旦失去平衡,就会保持姿势摔倒。

如何让机器人能感知自身状态,运动状态下保持身体平衡,这是程序结构设计的问题,还需要改进。

现在看来,机器人体内的电子陀螺仪的反馈信号完全没有起作用,更别说矫正动作姿势,保持身体平衡了。

可能这就是电脑模拟测试环境的弊端,默认都是理想化的条件,能把这些复杂的动作函数写出来,不管准确与否,陆伟他们已经很不容易了。

程序的复杂性超过罗平想象,几十万行的代码看的他头大,花了一下午的时间才简略的浏览一遍,只是明白了大概的思路,一些小问题他还可以尝试修改调试,让他大幅改进程序结构太有难度,专业问题交给专业的人,还是得交给陆伟他们解决。