在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

驗證星務軟件在RT-Thread系統運行的可行性

RTThread物聯網操作系統 ? 來源:RTThread物聯網操作系統 ? 作者:RTThread物聯網操作 ? 2021-04-16 11:52 ? 次閱讀

本作品為了驗證星務軟件在RT-Thread系統運行的可行性,底層是否能夠驅動星務軟件,同時擴展RT-Thread應用范圍。ART-Pi作為衛星下位機,星務前端用VS2010開發,兩者之間通過異步串口通信。星務前端發送遙控指令,ART-Pi能夠正常解析運行,并且能把星務的一些狀態遙測發送至星務前端,方便地面人員查看。本作品設計的線程只有星務線程,采集線程,姿控線程,地測線程,Free線程,正常的衛星軟件不止這五個線程,簡化為這五個,涉及到的外設也簡化為只有定時器與異步串口。

開發環境

硬件:ART-Pi開發板

RT-Thread版本:RT-Thread 4.0.2

開發工具及版本:RT-Thread Studio 1.1.5,Visual Studio 2010

RT-Thread使用情況概述

內核部分:線程操作(創建,掛起,刪除),二值信號

組件部分:軟件定時器,異步串口,

軟件包:無

其他:無

硬件框架

本作品驗證RT-Thread系統,軟件方面應用較多,底層硬件只需要一個ART-Pi開發板模擬衛星系統即可。ART-Pi作為衛星下位機,星務前端用一個PC代替即可,硬件框架如圖1所示。

b21f628c-9e22-11eb-8b86-12bb97331649.png

圖1 硬件框架

軟件框架說明

軟件框架如圖2所示,軟件定時器以4Hz頻率給星務線程信號量,星務線程啟動后,檢測其他各個線程的運行狀況,核對線程運行時間,核對軟件狗計數是否超過閾值,核對運行時間片,當都滿足后,給所有線程信號量。設計的各個線程優先級如表1所示,由表可知,星務線程優先級最高,會一直運行至等待下一個信號量,依據RTT線程搶占運行原理,次一級優先級線程運行。所以在一個時間片內,線程運行順序為,星務線程→采集線程→姿控線程→地測線程→Free線程。圖中的遙測遙控部分在下一章節“軟件模塊原理”描述。

軟件定時器于整秒處開始運行,定時器間隔為250ms,將0-249ms定義為時間片TASK_ROUNDA,將250-499ms定義為時間片TASK_ROUNDB,將500-749ms定義為時間片TASK_ROUNDC,將750-999ms定義為時間片TASK_ROUNDD。各線程運行時間片如表2所示。

b236d3ae-9e22-11eb-8b86-12bb97331649.png

b271fa2e-9e22-11eb-8b86-12bb97331649.png

圖2 軟件框架

軟件模塊說明

軟件模塊分為遙控上傳,遙測下傳,星務軟件管理三個部分,遙控上傳流程圖如圖3-a,3-b所示。

b2809ab6-9e22-11eb-8b86-12bb97331649.png

圖3-a 遙控流程

b28e1f06-9e22-11eb-8b86-12bb97331649.png

圖3-b 遙控流程

1.遙控流程

星務前端依照表3所示的遙控包結構組包,并通過異步串口發送至ART-Pi串口6,其中類型占用2個字節,定義如表4所示。

b296f63a-9e22-11eb-8b86-12bb97331649.png

b29fe4c0-9e22-11eb-8b86-12bb97331649.png

分系統類型:星務線程0x00,請求線程0x01,姿控線程0x02,無0x03.

指令碼:自定義地測線程將串口6FIFO讀空,按照表3結構循環解析解析遙控指令,直到無可用遙控包,然后將合法遙控包存儲到遙控指令緩存,等待線程來取指令;地測在存儲指令前,查看遙控指令緩存是否有可用空間,有可用空間則將指令存儲,并將標志位置有效狀態,線程檢測本線程對應的指令在緩沖區中有有效狀態指令時,將指令取出,并將標志位置空閑。具體遙控指令說明參考附錄。

2.遙測流程

遙測流程星上程序簡單,地測線程依據包發送的時間片,符合本周期則發送,不符合則丟棄,發送的數據包結構符合表3,包下發的具體信息請參考附錄。具體解包流程可參考上位機代碼,非本設計詳述部分,故不再贅述。

3.星務軟件管理

星務初始化時,初始化各個線程,初始化硬件等;當星上軟件運行起來時,檢測各個線程狀態,給合法線程信號量。當前線程共有三種狀態,即允許運行、線程掛起、線程停止。各個線程的狀態不僅受到遙控指令控制,還會與星務軟件狗有關,各個線程之間的轉換關系如圖4所示。

b2a9b3b0-9e22-11eb-8b86-12bb97331649.png

圖4 線程狀態轉換與遙控指令對應關系

圖4中,紅字表示發送的遙控指令,圓圈內表示當前線程狀態。

星務軟件設計了軟件狗,軟件狗的作用是為了防止線程死循環,將整個優先級之后的的線程同時卡死的問題,具體過程是每次當星務給線程信號量時,此線程對應的軟件狗計數會累加,當線程運行至線程循環底部時,會將軟件狗清零;如果在一個周期內,程序由于卡死在死循環或者是任務循環次數過大,導致本周期未運行至函數體底部,則星務會繼續累計軟件狗,當次數大于設置值時,依據設置的方式對線程處理,線程重啟或者是整個操作系統重啟。

演示效果

b2bf3d16-9e22-11eb-8b86-12bb97331649.png

圖5 星務前端上位機界面1

b2f26948-9e22-11eb-8b86-12bb97331649.png

圖6 星務前端上位機界面2

比賽感悟

本作品較好的實現了原定的目標,在真實情況下,RTT也會有較好表現,擴展了RTT的應用范圍,對其他的類似系統也有很好的借鑒作用;但是作為功能強大的ART-Pi開發板,真正用到的功能較少,后期可以再開發一些其他的有意義的應用。

本作品所用的代碼與實際衛星使用代碼原理一致而具體不同,有部分借鑒的成分,主要的困難是需要將星務系統底層適配RTT,并且不能照抄原版代碼,一是為了避免涉密,二是為了提高移植的意義,使我對整個衛星的軟件框架有了很好的認識,對我本人從事的工作也有很好的促進作用。而且開源衛星代碼的原理也讓衛星代碼圈子增加一點生態,也對其將來的發展有好的促進作用。

原文標題:【RT-Thread開源作品秀】基于RT-Thread的星務平臺研究

文章出處:【微信公眾號:RTThread物聯網操作系統】歡迎添加關注!文章轉載請注明出處。

責任編輯:haq

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 開源
    +關注

    關注

    3

    文章

    3380

    瀏覽量

    42603
  • RT-Thread
    +關注

    關注

    31

    文章

    1300

    瀏覽量

    40264

原文標題:【RT-Thread開源作品秀】基于RT-Thread的星務平臺研究

文章出處:【微信號:RTThread,微信公眾號:RTThread物聯網操作系統】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    混合部署 | 迅為RK3568上同時部署RT-Thread和Linux系統

    的任務,則可以獨立的 RT-Thread 分區中運行,與 Linux 系統相隔離,以確保系統的安全
    發表于 11-01 10:31

    混合部署 | 迅為RK3568上同時部署RT-Thread和Linux系統

    的任務,則可以獨立的 RT-Thread 分區中運行,與 Linux 系統相隔離,以確保系統的安全
    發表于 09-18 10:54

    【QEMU系列】不用開發板運行RT-Thread指南-ARM架構

    成為一個門檻。本文將詳細介紹如何在QEMU虛擬機的Vexpress-A9平臺上運行RT-Thread,幫助開發者沒有實際硬件開發板的情況下,輕松體驗和學習RT-Th
    的頭像 發表于 08-09 08:35 ?994次閱讀
    【QEMU系列】不用開發板<b class='flag-5'>運行</b><b class='flag-5'>RT-Thread</b>指南-ARM架構

    RT-Thread內部機制大揭秘,帶你深入操作系統內核

    一、RT-Thread概述RT-Thread是一款具有顯著優勢的開源嵌入式實時操作系統。它不僅具備輕量級、實時強的特點,還擁有廣泛的開源社區支持和豐富的應用場景。
    的頭像 發表于 08-01 08:11 ?3821次閱讀
    <b class='flag-5'>RT-Thread</b>內部機制大揭秘,帶你深入操作<b class='flag-5'>系統</b>內核

    RT-Thread 新里程碑達成——GitHub Star 破萬!

    RT-Thread實時操作系統開源項目GitHub上的star數量突破一萬!截止發文,RT-Thread作為實時操作系統在業界Star數量
    的頭像 發表于 07-04 08:35 ?502次閱讀
    <b class='flag-5'>RT-Thread</b> 新里程碑達成——GitHub Star 破萬!

    基于 RT-Thread專業版的EtherCAT主站方案

    特點。RT-Thread實時操作系統運行EtherCAT主站協議,大大提高了實時,極大降低了循環同步抖動時間,可滿足各種對實時性要求苛
    的頭像 發表于 06-19 08:35 ?997次閱讀
    基于 <b class='flag-5'>RT-Thread</b>專業版的EtherCAT主站方案

    6月6日杭州站RT-Thread線下workshop,探索RT-Thread混合部署新模式!

    嵌入式軟件工程師郭占鑫老師為您講解有關技術知識和實踐經驗。通過本次workshop能深入理解RT-Thread專業版與混合部署的潛力,RK3568平臺上提升系統實時
    的頭像 發表于 05-28 08:35 ?465次閱讀
    6月6日杭州站<b class='flag-5'>RT-Thread</b>線下workshop,探索<b class='flag-5'>RT-Thread</b>混合部署新模式!

    5月16日南京站RT-Thread線下workshop,探索RT-Thread混合部署新模式!

    嵌入式軟件工程師郭占鑫老師為您講解有關技術知識和實踐經驗。通過本次workshop能深入理解RT-Thread專業版與混合部署的潛力,RK3568平臺上提升系統
    的頭像 發表于 05-01 08:35 ?394次閱讀
    5月16日南京站<b class='flag-5'>RT-Thread</b>線下workshop,探索<b class='flag-5'>RT-Thread</b>混合部署新模式!

    RT-Thread混合部署Workshop北京站來啦!

    嵌入式軟件工程師郭占鑫老師為您講解有關技術知識和實踐經驗。通過本次workshop能深入理解RT-Thread專業版與混合部署的潛力,RK3568平臺上提升系統
    的頭像 發表于 04-19 08:34 ?458次閱讀
    <b class='flag-5'>RT-Thread</b>混合部署Workshop北京站來啦!

    4月25日北京站RT-Thread線下workshop,探索RT-Thread混合部署新模式

    嵌入式軟件工程師郭占鑫老師為您講解有關技術知識和實踐經驗。通過本次workshop能深入理解RT-Thread專業版與混合部署的潛力,RK3568平臺上提升系統
    的頭像 發表于 04-16 08:35 ?438次閱讀
    4月25日北京站<b class='flag-5'>RT-Thread</b>線下workshop,探索<b class='flag-5'>RT-Thread</b>混合部署新模式

    【4月10日-深圳-workshop】RT-Thread帶你探索混合部署新模式

    嵌入式軟件工程師農曉明老師為您講解有關技術知識和實踐經驗。通過本次workshop能深入理解RT-Thread專業版與混合部署的潛力,RK3568平臺上提升系統
    的頭像 發表于 04-04 08:34 ?364次閱讀
    【4月10日-深圳-workshop】<b class='flag-5'>RT-Thread</b>帶你探索混合部署新模式

    4月10日深圳場RT-Thread線下workshop,探索RT-Thread混合部署新模式!

    4月10日我們將在深圳福田舉辦RT-Thread混合部署線下workshop,瑞芯微RK3568平臺上實現同時運行RT-Thread和linux,本次workshop邀請到
    的頭像 發表于 03-27 11:36 ?855次閱讀
    4月10日深圳場<b class='flag-5'>RT-Thread</b>線下workshop,探索<b class='flag-5'>RT-Thread</b>混合部署新模式!

    4月10日深圳場RT-Thread線下workshop,探索RT-Thread混合部署新模式!

    嵌入式軟件工程師農曉明老師為您講解有關技術知識和實踐經驗。通過本次workshop能深入理解RT-Thread專業版與混合部署的潛力,RK3568平臺上提升系統
    的頭像 發表于 03-27 08:34 ?548次閱讀
    4月10日深圳場<b class='flag-5'>RT-Thread</b>線下workshop,探索<b class='flag-5'>RT-Thread</b>混合部署新模式!

    RT-Thread榮獲“中國汽車軟件新銳企業”獎

    RT-Thread作為中國嵌入式實時操作系統領域的領航者,智能汽車與物聯網技術緊密結合的浪潮中,以其卓越的技術創新能力、深厚的專業積累和廣泛的市場應用,榮獲了由權威媒體和行業觀察機構蓋世汽車頒發
    的頭像 發表于 03-20 10:00 ?410次閱讀
    <b class='flag-5'>RT-Thread</b>榮獲“中國汽車<b class='flag-5'>軟件</b>新銳企業”獎

    就在本周四!探索RT-Thread混合部署新模式!

    嵌入式軟件工程師郭老師為您講解有關技術知識和實踐經驗。通過本次workshop能深入理解RT-Thread專業版與混合部署的潛力,RK3568平臺上提升系統實時
    的頭像 發表于 03-20 08:34 ?583次閱讀
    就在本周四!探索<b class='flag-5'>RT-Thread</b>混合部署新模式!
    主站蜘蛛池模板: 成年片色大黄全免费| 亚洲haose在线观看| 午夜影视免费完整高清在线观看网站| 波多野结衣在线观看一区| swag系列国产精品| 午夜影院普通| 欧美久久天天综合香蕉伊| 国产精品波多野结衣| 欧美性网| 欧美日本一区二区三区生| 一级特级片| 日韩a级毛片| 极品啪啪| 午夜啪| 狠狠操天天操视频| 91av免费| 月夜免费观看高清在线完整| 特级黄色淫片| 免费澳门一级毛片| 国产毛片农村妇女系列| 最新大黄网站免费| 久爱综合| 亚洲 丝袜 制服 欧美 另类| 亚洲国产综合久久精品| 天天做天天爱夜夜爽毛片毛片| 天天在线干| 高黄网站| 午夜视频在线网站| 午夜色图| 久久综合性| 在线国产资源| 成人三级在线播放线观看| 亚洲精品私拍国产福利在线| 九九热九九| 一区二区不卡视频| 性xxxxbbbb免费播放视频| 欧美成人精品一区二区| 成熟妇女毛耸耸性视频| 久久天天综合| 日本aaaa毛片在线看| 色噜噜狠狠色综合欧洲|