EtherCrab -- 一個(gè)用 Rust 編寫的 EtherCAT 主站
什么是 EtherCAT
EtherCAT 名稱的由來是:Ethernet for Control Automation Technology,也就是用于控制自動(dòng)化技術(shù)的以太網(wǎng)協(xié)議技術(shù),其實(shí)也就是工業(yè)以太網(wǎng)的一種。EtherCAT 是倍福公司旗下的 ETG( EtherCAT 技術(shù)協(xié)會(huì))負(fù)責(zé)研發(fā)并推廣的一種實(shí)時(shí)以太網(wǎng)技術(shù),它是一種開放的網(wǎng)絡(luò)協(xié)議,可以進(jìn)行主從設(shè)備之間的通信。
通過主從系統(tǒng)架構(gòu)進(jìn)行控制。主站發(fā)送“目標(biāo)數(shù)據(jù)”,從站接收目標(biāo)數(shù)據(jù)并寫入“實(shí)際數(shù)據(jù)”。目標(biāo)數(shù)據(jù)可以是用于有源設(shè)備(執(zhí)行器)的控制指令,以便執(zhí)行特定的動(dòng)作,例如設(shè)置電動(dòng)機(jī)的轉(zhuǎn)速。另一方面,實(shí)際數(shù)據(jù)表示來自被測(cè)設(shè)備(傳感器)的有關(guān)各種狀態(tài)(例如當(dāng)前位置,轉(zhuǎn)速或溫度)的信息。
EtherCAT 主站是做什么的
EtherCAT 主站組裝 EtherCAT 數(shù)據(jù)報(bào),然后通過所有連接的從站發(fā)送它們。EtherCAT 的特殊之處在于,在通過過程中,每個(gè)從站都將從循環(huán)數(shù)據(jù)報(bào)中取出其特定目標(biāo)數(shù)據(jù),同時(shí)將自己的實(shí)際數(shù)據(jù)放入數(shù)據(jù)報(bào)中。所有不打算用于從站的剩余數(shù)據(jù)都將原封不動(dòng)地轉(zhuǎn)發(fā)。數(shù)據(jù)報(bào)經(jīng)過所有從站后,它會(huì)返回并由主站接收。即使對(duì)于大量互連的 EtherCAT 從站,此過程也非??旖荩?yàn)閱蝹€(gè)從站的通過延遲僅為幾納秒。
?
而 EtherCrab 就是用 rust 編寫的 EtherCAT 主站。
RuSTy -- 一個(gè)用 Rust 編寫的結(jié)構(gòu)化文本編譯器
RuSTy 是用 Rust 編寫的結(jié)構(gòu)化文本 (ST) 編譯器,基于 LLVM 編譯器后端。使用 logos crate 庫在自定義解析器運(yùn)行之前執(zhí)行詞法分析。RuSTy 通過翻轉(zhuǎn)命令行標(biāo)志來輸出靜態(tài)或共享對(duì)象以及 LLVM IR 或位碼。作者的目標(biāo)是打造至少支持第 2 版 IEC 61131 標(biāo)準(zhǔn)中的功能的開源工業(yè)級(jí) ST 編譯器。
審核編輯:劉清
-
傳感器
+關(guān)注
關(guān)注
2551文章
51134瀏覽量
753893 -
EtherCAT主站
+關(guān)注
關(guān)注
2文章
13瀏覽量
4181 -
rust語言
+關(guān)注
關(guān)注
0文章
57瀏覽量
3009
原文標(biāo)題:【Rust日?qǐng)?bào)】2022-10-26 EtherCrab -- 一個(gè)用 Rust 編寫的 EtherCAT 主站
文章出處:【微信號(hào):Rust語言中文社區(qū),微信公眾號(hào):Rust語言中文社區(qū)】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論