如何编译和安装Xenomai

如何编译和安装Xenomai,第1张

如何编译和安装Xenomai

在Xenomai的用户空间下,有两种模式:primary mode (主模式) 和 secondary mode(次模式).在主模式下调用Linux系统调用后程序就会进入次模式,反之,在次模式下调用Xenomai的系统调用后程序会进入主模式。

主模式和次模式的引入主要是丰富了实时程序可调用的库,实时程序也可以调用Linux的库,但是实时性受Linux自身的影响。

区别如下

1.电子系统

ART1的电子系统架构的选择,大方向上是来源于ValkyrieWikiHomePage上的文档,甚至于我们最后在ART2上完整的实现了一个‘Robonet’。ART1的通信协议使用ETHERCAT,主站使用IGH协议栈,从站使用stm32+ET1100实现。不过由于赶工期(这个人形项目当时就3个写软件的,并且要实现从电机驱动到上层接口的一切)并没有实现同步时钟等高级功能。在一个月的开发(一月入门)后,测试发现控制二十几电机节点+读取IMU与六维力,最快频率能达到2khz,电机驱动为fpga实现。

ART3主要为了验证被动步态,所以我们在电子系统上,直接采用了ethercat总线与elmo驱动器。

2.软件系统

ART1与ART2主要使用了ROS,当然最开始我们也不相信ROS能支持1khz的控制频率,直到看见了OSRF官方的代码:wandrr。这个机器人应该是当时和durus比赛的那个机器人,当时全网只能找到关于他的一个ppt。按照wandrr项目的实现,我实现ART2的基于ros控制系统,然后在200hz的控制频率下,系统抖动是能接受的(遇见最坑的bug是通信总线程序会被调度。。调试了很久才发现)。

在ART3,我们使用XENOMAI3实现了一个硬实时的控制,能够达到2khz的控制频率,当我们完成后,才发现我们和iit的XBotCore的实现细节是一样的。。。

在Xenomai的用户空间下,有两种模式:primary mode (主模式) 和 secondary mode(次模式).

在主模式下调用Linux系统调用后程序就会进入次模式,反之,在次模式下调用Xenomai的系统调用后程序会进入主模式。

主模式和次模式的引入主要是丰富了实时程序可调用的库,实时程序也可以调用Linux的库,但是实时性受Linux自身的影响。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12139057.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-21
下一篇 2023-05-21

发表评论

登录后才能评论

评论列表(0条)

保存