日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > linux >内容正文

linux

linux 实时功能,linux – 什么是同时具有实时循环和非实时功能的更好方法

發布時間:2023/12/15 linux 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 linux 实时功能,linux – 什么是同时具有实时循环和非实时功能的更好方法 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

抱歉標題不好,我真的不知道如何描述…

我的情況是,對于機器人應用程序,我們需要一個實時循環來每1ms控制一次電機.同時我們可能想要做一些沒有實時要求的事情,例如路徑規劃,圖像處理,對象識別等.此外,非實時任務的一些結果將被發送到實時電機控制循環來控制機器人.

對于實時部分,我使用Ubuntu和RT-Preempt Patch.因此,我可以在while循環中運行實時控制循環,就像示例代碼here一樣.

但是,我不知道非實時部分.在我看來,我會在同一個進程中創建一個線程并在該線程中運行非實時任務.

由于我對實時編程很新,我不知道我的設計會出現什么問題.此外,我想知道是否有任何設計此類程序的范例?

– -編輯 – –

關于我的申請的更多細節.

更具體地說,機器人是機器人手臂.

對于實時部分,它計算正向運動學,反向運動學和雅可比.然后使用簡單的PID控制器計算正確的輸出命令.最后,使用EtherCAT將電機命令發送到每個電機.

例如,對于非實時部分,可以從kinect獲取PointCloud流,進行一些預處理,計算場景中對象的姿勢,確定機器人手臂的良好抓握姿勢,最后發送每個的目標.電機到實時部分,以便機器人手臂實際移動到目標并抓住物體.整個過程可能需要10秒左右.然而,同時實時循環應該繼續運行并發送適當的力命令或位置命令,以使機器人手臂保持其原始姿勢并保持靜止.

對于這兩個部分之間的通信,在大多數情況下,命令由來自非實時部分的新算法生成,并將其發送到實時部分以使機器人手臂移動.然而,有時非實時部分中的算法將需要知道例如末端執行器的當前姿勢.因此,非實時部分將需要從正向運動學中獲取信息,該正向運動學駐留在實時部分中.

總結

以上是生活随笔為你收集整理的linux 实时功能,linux – 什么是同时具有实时循环和非实时功能的更好方法的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。