99精品伊人亚洲|最近国产中文炮友|九草在线视频支援|AV网站大全最新|美女黄片免费观看|国产精品资源视频|精彩无码视频一区|91大神在线后入|伊人终合在线播放|久草综合久久中文

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

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

3天內(nèi)不再提示

驗證星務軟件在RT-Thread系統(tǒng)運行的可行性

RTThread物聯(lián)網(wǎng)操作系統(tǒng) ? 來源:RTThread物聯(lián)網(wǎng)操作系統(tǒng) ? 作者:RTThread物聯(lián)網(wǎng)操作 ? 2021-04-16 11:52 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

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

開發(fā)環(huán)境

硬件:ART-Pi開發(fā)板

RT-Thread版本:RT-Thread 4.0.2

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

RT-Thread使用情況概述

內(nèi)核部分:線程操作(創(chuàng)建,掛起,刪除),二值信號

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

軟件包:無

其他:無

硬件框架

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

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

圖1 硬件框架

軟件框架說明

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

軟件定時器于整秒處開始運行,定時器間隔為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所示的遙控包結構組包,并通過異步串口發(fā)送至ART-Pi串口6,其中類型占用2個字節(jié),定義如表4所示。

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

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

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

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

2.遙測流程

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

3.星務軟件管理

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

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

圖4 線程狀態(tài)轉換與遙控指令對應關系

圖4中,紅字表示發(fā)送的遙控指令,圓圈內(nèi)表示當前線程狀態(tài)。

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

演示效果

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

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

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

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

比賽感悟

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

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

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

文章出處:【微信公眾號:RTThread物聯(lián)網(wǎng)操作系統(tǒng)】歡迎添加關注!文章轉載請注明出處。

責任編輯:haq

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

    關注

    3

    文章

    3690

    瀏覽量

    43840
  • RT-Thread
    +關注

    關注

    32

    文章

    1412

    瀏覽量

    41975

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

文章出處:【微信號:RTThread,微信公眾號:RTThread物聯(lián)網(wǎng)操作系統(tǒng)】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    RT-Thread榮獲2025優(yōu)秀開源項目 | 新聞速遞

    6月底,RT-Thread睿賽德受邀參與由上海開源信息技術協(xié)會主辦的2025上海開源創(chuàng)新精英薈。上海市商委副主任張杰出席會議并致辭。RT-Thread嵌入式操作系統(tǒng)項目憑借其卓越的技術創(chuàng)新與開源生態(tài)
    的頭像 發(fā)表于 07-04 09:04 ?1713次閱讀
    <b class='flag-5'>RT-Thread</b>榮獲2025優(yōu)秀開源項目 | 新聞速遞

    揭秘RT-Thread上的AUTOSAR CP系統(tǒng)

    標準,同時保留RT-Thread的POSIX支持與可裁剪,實現(xiàn)了通信隔離、診斷模塊集成等關鍵技術突破,為車載系統(tǒng)提供高安全、可擴展的解決方案。車載電子系統(tǒng)與傳統(tǒng)
    的頭像 發(fā)表于 06-23 20:22 ?2325次閱讀
    揭秘<b class='flag-5'>RT-Thread</b>上的AUTOSAR CP<b class='flag-5'>系統(tǒng)</b>

    人形機器人敏捷開發(fā)新路徑:RT-Thread軟件底座破解復雜系統(tǒng)難題 | 新聞速遞

    機器人行業(yè)解決方案負責人郭占鑫發(fā)表《從異構通信到虛擬化技術:RT-Thread助力機器人敏捷、可持續(xù)開發(fā)》主題演講,系統(tǒng)闡述了RT-Thread操作系統(tǒng)
    的頭像 發(fā)表于 06-04 14:03 ?629次閱讀
    人形機器人敏捷開發(fā)新路徑:<b class='flag-5'>RT-Thread</b>以<b class='flag-5'>軟件</b>底座破解復雜<b class='flag-5'>系統(tǒng)</b>難題 | 新聞速遞

    2025 RT-Thread全球技術大會議程正式發(fā)布!

    RT-ThreadGlobalTechConference(RT-ThreadGTC,RT-Thread全球技術大會)是聚焦基礎軟件技術創(chuàng)新與實踐的嵌入式技術盛會,持續(xù)推動技術價值轉化
    的頭像 發(fā)表于 05-27 19:28 ?676次閱讀
    2025 <b class='flag-5'>RT-Thread</b>全球技術大會議程正式發(fā)布!

    RT-Thread審核團招募: 深度參與開源RTOS社區(qū)治理與演進

    全球開發(fā)者招募:RT-Thread審核團(ReviewTeam)正式開放申請!開源的世界里,代碼審查(CodeReview)是保證軟件質(zhì)量、促進技術交流的關鍵環(huán)節(jié)。RT-Thread
    的頭像 發(fā)表于 05-21 18:02 ?668次閱讀
    <b class='flag-5'>RT-Thread</b>審核團招募: 深度參與開源RTOS社區(qū)治理與演進

    RT-Thread睿賽德亮相深圳機器人產(chǎn)業(yè)大會,聚焦機器人軟件系統(tǒng)技術前沿 | 新聞速遞

    。RT-Thread睿賽德嵌入式軟件工程師梁瑛健在會上發(fā)表題為《RT-Thread為機器人軟件系統(tǒng)賦能》的主題演講,深入探討了
    的頭像 發(fā)表于 05-20 18:15 ?476次閱讀
    <b class='flag-5'>RT-Thread</b>睿賽德亮相深圳機器人產(chǎn)業(yè)大會,聚焦機器人<b class='flag-5'>軟件</b><b class='flag-5'>系統(tǒng)</b>技術前沿 | 新聞速遞

    如何將RT-Thread移植到NXP MCUXPressoIDE上

    RT-Thread默認支持的IDE只有IAR 和 Keil, 那如何將RT-Thread移植到NXP MCUXPressoIDE上呢?本文內(nèi)容比較簡單但稍有瑣碎,希望對有需要的小伙伴有所幫助。
    的頭像 發(fā)表于 02-13 10:37 ?1937次閱讀
    如何將<b class='flag-5'>RT-Thread</b>移植到NXP MCUXPressoIDE上

    RT-Thread操作系統(tǒng)應用開發(fā)寒假師資培訓

    的應用技能,睿賽德科技聯(lián)合全國大學生嵌入式大賽組委會將于2025年1月16-29日陜西省西安市舉辦RT-Thread操作系統(tǒng)物聯(lián)網(wǎng)應用開發(fā)師資培訓。本次培訓旨在通
    的頭像 發(fā)表于 12-06 01:06 ?557次閱讀
    <b class='flag-5'>RT-Thread</b>操作<b class='flag-5'>系統(tǒng)</b>應用開發(fā)寒假師資培訓

    RT-Thread上CAN實踐

    開箱測試RT-Thread官方已完成了對英飛凌XMC7200EVK的移植,通過shell可以看到做好了uart3的console。本文將介紹如何進行RT-ThreadCan移植。接下來我們要完成CAN_FD的驅(qū)動移植,并正常啟動RT-T
    的頭像 發(fā)表于 11-13 01:03 ?2136次閱讀
    <b class='flag-5'>RT-Thread</b>上CAN實踐

    混合部署 | 迅為RK3568上同時部署RT-Thread和Linux系統(tǒng)

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

    混合部署 | 迅為RK3568上同時部署RT-Thread和Linux系統(tǒng)

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

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

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

    2024 RT-Thread全球巡回 線下培訓火熱來襲!

    親愛的RT-Thread社區(qū)成員們:我們非常高興地宣布,2024年RT-Thread全球開發(fā)者線下培訓即將拉開帷幕!24年全球巡回培訓將覆蓋超10座城市及國家,為開發(fā)者提供一個深入學習RT-Thread嵌入式開發(fā)的絕佳機會。
    的頭像 發(fā)表于 08-07 08:35 ?2975次閱讀
    2024 <b class='flag-5'>RT-Thread</b>全球巡回 線下培訓火熱來襲!

    【好書推薦】RT-Thread設備驅(qū)動開發(fā)指南

    近年來國內(nèi)芯片產(chǎn)業(yè)和物聯(lián)網(wǎng)產(chǎn)業(yè)的快速崛起,行業(yè)發(fā)展迫切需要更多人才,尤其需要掌握嵌入式操作系統(tǒng)等底層技術的人才。隨著RT-Thread被更廣泛地應用于行業(yè)中,開發(fā)者對嵌入式驅(qū)動開發(fā)的需求越來越
    的頭像 發(fā)表于 08-01 08:35 ?1340次閱讀
    【好書推薦】<b class='flag-5'>RT-Thread</b>設備驅(qū)動開發(fā)指南

    RT-Thread內(nèi)部機制大揭秘,帶你深入操作系統(tǒng)內(nèi)核

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