91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

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

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

3天內不再提示

用睿擎派實現(xiàn) LVGL 可視化 EtherCAT 電機控制,觸屏操控伺服電機就這么簡單|技術集結

RT-Thread官方賬號 ? 2026-03-18 11:07 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

工業(yè)自動化領域,運動控制系統(tǒng)往往面臨兩大痛點:實時性要求極高,同時又需要直觀的人機交互界面。傳統(tǒng)方案要么犧牲實時性換取界面體驗,要么用昂貴的專用 HMI 設備來彌補。

今天分享一個基于睿擎派 RC3506的完整方案——用LVGL 圖形界面 + EtherCAT 總線,在一塊開發(fā)板上同時搞定可視化操控和微秒級實時控制。(文末附完整工程源碼及使用指南掃碼領?。?/span>

效果先看



觸摸屏上拖動滑塊 → 伺服電機精準轉到指定位置;點擊 Run/Stop 按鈕 → 電機啟停;切換 Direct/Reverse → 方向立即響應。屏幕上的位置表盤實時顯示期望位置和當前位置,一目了然。


8eaec692-2277-11f1-96ea-92fbcf53809c.jpg


7寸觸控屏上的 LVGL 控制界面:位置表盤 + 滑塊 + 運行控制按鈕

與此同時,EtherCAT 總線上掛載的遠程 IO 模塊同步輸出流水燈效果,展示多從站并行控制能力。

為什么選 EtherCAT?

EtherCAT(Ethernet for Control Automation Technology)是目前工業(yè)現(xiàn)場總線中實時性最強的協(xié)議之一:

通信周期最低 1ms,支持分布式時鐘DC)同步,精度達微秒級

●"飛速處理"機制:數(shù)據(jù)幀在經過從站時直接被讀寫,無需等待,延遲極低

●菊花鏈拓撲:一根網線串聯(lián)多個從站,布線簡單,最多支持 65535 個節(jié)點

●使用標準以太網硬件,無需專用芯片,成本可控


睿擎派 RC3506 內置 EtherCAT 主站協(xié)議棧,配合 RT-Thread 實時操作系統(tǒng),可以穩(wěn)定跑出1ms 控制周期。


硬件準備

8ec75c16-2277-11f1-96ea-92fbcf53809c.png

連接方式:

睿擎派 ETH0 ──網線──> 伺服驅動器 IN 口


伺服驅動器 OUT 口 ──網線──> 遠程 IO IN 口


睿擎派 MIPI 接口 ──排線──> 7 寸觸控屏


8ed31baa-2277-11f1-96ea-92fbcf53809c.png


EtherCAT 主從站硬件連接示意:睿擎派 → 伺服驅動器 → 遠程 IO


軟件架構

整個示例的軟件結構非常清晰,main 函數(shù)只做兩件事:

intmain(void)
{
lvgl_thread_init();// 啟動 LVGL 圖形線程
ethercat_domain_init();// 啟動 EtherCAT 控制線程
return0;
}


兩個線程并行運行,互不干擾:

●LVGL 線程:負責渲染界面、響應觸摸事件,將用戶操作寫入共享變量

●EtherCAT 線程:以 1ms 為周期讀取共享變量,通過 PDO 下發(fā)目標位置給伺服驅動器


EtherCAT 主站初始化流程

EtherCAT 的狀態(tài)機切換是標準流程,睿擎平臺封裝得很簡潔:

// 1. 初始化主站服務


ecat_service_init();

// 2. 自動掃描總線拓撲,發(fā)現(xiàn)所有從站
ecat_master_init(&csp_master);

// 2. 自動掃描總線拓撲,發(fā)現(xiàn)所有從站
slave_counts=ecat_slavecount(&csp_master);;

// 3. 配置分布式時鐘(DC)同步
slave_cia402_config.dc_assign_activate=0x300;
slave_cia402_config.dc_sync[0].cycle_time=csp_master.main_cycletime_us*1000;
slave_cia402_config.dc_sync[0].shift_time=500000;
slave_cia402_config.dc_sync[1].cycle_time=0;
slave_cia402_config.dc_sync[1].shift_time=0;

// 4. 配置 PDO 映射(目標位置、控制字、狀態(tài)字等)
slave_cia402_config.sync=slave_syncs;
slave_cia402_config.sync_count=sizeof(slave_syncs)/sizeof(ec_sync_info_t);
ecat_slave_config(&csp_master,0,&slave_cia402_config);

// 5. 啟動主站自動完成狀態(tài)機切換:INIT → PRE-OP → SAFE-OP → OPERATIONAL
ecat_master_start(&csp_master);
state=EC_STATE_OPERATIONAL;
ecat_check_state(&csp_master,0,&state,20000000*3);


進入 OPERATIONAL 狀態(tài)后,主站開始周期性收發(fā)過程數(shù)據(jù)(PDO),電機控制正式開始。


CSP 模式:周期同步位置控制

本示例使用CSP(Cyclic Synchronous Position)模式,這是伺服控制中最常用的模式之一:


主站每個控制周期向伺服驅動器發(fā)送目標位置,驅動器內部完成位置環(huán)、速度環(huán)、電流環(huán)的閉環(huán)控制。主站只需關心"去哪里",不需要關心"怎么去"。

核心控制循環(huán)如下:

while(1)
{
servo_switch_op(rmap,tmap);// 進行伺服狀態(tài)機切換

if(rmap->control_word==7)
{
rmap->mode_byte=0x8;
rmap->dest_pos=tmap->cur_pos;// 同步當前位置
}
if(rmap->control_word==0xf)
{
if(motor_target_pos_last!=motor_target_pos)
{
/* 獲取當前位置 */
motor_current_pos=PULSE_TO_ANGLE(tmap->cur_pos);

if(abs(motor_current_pos-motor_target_pos)<=0)
{
rmap->dest_pos=tmap->cur_pos;
if(abs(tmap->cur_pos-rmap->dest_pos)<=10)
{
/* 微調目標位置 */
motor_target_pos_last=motor_target_pos;
}
gotostop;
}
if(servo_dir)
{
rmap->dest_pos-=motor_step;// 根據(jù)方向步進目標位置
}
else
{
rmap->dest_pos+=motor_step;// 根據(jù)方向步進目標位
}
}
}
stop:
rt_thread_delay(5);
}


servo_run、motor_target_pos、servo_dir 這些變量由 LVGL 界面線程寫入,EtherCAT 線程讀取,實現(xiàn)了界面與控制的解耦。


PDO 映射:主站與從站的數(shù)據(jù)約定

PDO(Process Data Object)定義了每個控制周期主站和從站交換哪些數(shù)據(jù):

主站 → 從站(RPDO,輸出):

對象字典

含義

0x6060

工作模式(設為 0x08 = CSP 模式)

0x6040

控制字(使能/停止/故障復位)

0x607A

目標位置

0x60FF

目標速度

0x6071

目標轉矩

從站 → 主站(TPDO,輸入):

對象字典

含義

0x603F

錯誤碼

0x6041

狀態(tài)字(當前狀態(tài))

0x6064

實際位置(反饋給 LVGL 顯示)

0x606C

實際速度

0x6077

實際轉矩

實際位置 0x6064 會實時回傳給 LVGL 界面,驅動表盤指針更新,讓操作者直觀看到電機當前位置。


多從站擴展:雙電機 + IO 并行控制

睿擎平臺同樣支持一拖多的 EtherCAT 拓撲,只需在初始化時掃描從站數(shù)量,循環(huán)處理每個從站的 PDO 即可:

8ee5712e-2277-11f1-96ea-92fbcf53809c.jpg


雙電機 + 遠程 IO 模塊菊花鏈連接拓撲

slave_counts=ecat_slavecount(&csp_master);

while(1){
for(size_tslave=0;slave<slave_counts;slave++)
{
rmap=(structrpdo_csp*)(info[slave].outputs);
tmap=(structtpdo_csp*)(info[slave].inputs);

if(info[slave].vendor_id!=0xee000002)
{// 伺服電機控制
servo_switch_op(rmap,tmap);
if(rmap->control_word==7)
{
rmap->dest_pos=tmap->cur_pos;
rmap->mode_byte=0x8;
}
elseif(rmap->control_word==0xf)
{
rmap->dest_pos=tmap->cur_pos;
if(servo_dir==0)
{
rmap->dest_pos-=10000;
}
else
{
rmap->dest_pos+=10000;
}
}
}
else
{// 流水燈控制
if(rt_tick_get()-last_ms>RT_TICK_PER_SECOND/4)
{
staticuint8_tindex=0;
uint16_t*out=(uint16_t*)rmap;
last_ms=rt_tick_get();
*out=(0x01<<index);
index++;
if(index>=16)
index=0;
}
}
}
stop:
rt_thread_mdelay(5);
}


電機控制和 IO 控制在同一個 1ms 周期內完成,完全同步。


快速上手

第一步:

在RuiChing Studio中選擇 05_gui_lvgl_ethercat_motor_control_7in_1024_600 示例工程

8ef1314e-2277-11f1-96ea-92fbcf53809c.png

睿擎派 RC3506 開發(fā)板 + EtherCAT 伺服驅動器實物連接

第二步:按硬件連接圖接好網線和顯示屏,上電

第三步:編譯下載,啟動調試,顯示屏自動亮起控制界面

第四步:拖動滑塊設置目標位置,點擊Run/Stop啟動電機


整個過程無需手寫一行 EtherCAT 協(xié)議代碼,睿擎平臺已封裝好所有底層細節(jié)。


適用場景

多軸運動控制:CNC 機床、機械臂、自動化產線

●工業(yè) HMI:替代傳統(tǒng)觸摸屏 PLC,降低系統(tǒng)成本

●教學與原型驗證:快速驗證 EtherCAT 控制方案可行性

●設備狀態(tài)可視化:實時顯示電機位置、速度、轉矩等運行參數(shù)


總結

這個示例展示了睿擎派 RC3506 在工業(yè)控制場景的完整能力:

RT-Thread 實時內核保障 1ms EtherCAT 控制周期

LVGL 圖形框架提供流暢的觸控操作界面

EtherCAT 主站協(xié)議棧支持 CSP/CSV/CST 多種控制模式

多從站并行控制,電機 + IO 同步運行

RuiChing Studio 一鍵創(chuàng)建工程,開箱即用

如果你正在尋找一個既能跑實時控制、又能做可視化界面的嵌入式平臺,睿擎派值得一試。

示例工程

通過 RuiChing Studio 搜索 05_gui_lvgl_ethercat_motor_control_7in_1024_600 即可獲取

開發(fā)文檔:https://www.rt-thread.com/ruiching/document/site/

技術交流:歡迎在評論區(qū)留言,或加入睿擎開發(fā)者社區(qū)

完整資料包領取

想親手跑通這個 LVGL + EtherCAT 電機控制示例?我們整理了完整資料包,助你快速復現(xiàn):

示例完整工程源碼(RuiChing Studio 可直接導入)

LVGL 界面源碼 + 觸控驅動配置說明

EtherCAT 主站使用指南

伺服驅動器 ESI 文件及配置指南

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

    關注

    3601

    文章

    2138

    瀏覽量

    278059
  • 伺服電機
    +關注

    關注

    88

    文章

    2191

    瀏覽量

    61343
  • ethercat
    +關注

    關注

    20

    文章

    1524

    瀏覽量

    45440
  • LVGL
    +關注

    關注

    3

    文章

    127

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    一種可視化智能充電機的設計

    針對電動車、電動汽車電池壽命偏低,設計了一種可視化智能充電機,它是結合了單片機智能控制技術,VB可視化
    發(fā)表于 11-14 16:27 ?4570次閱讀
    一種<b class='flag-5'>可視化</b>智能充<b class='flag-5'>電機</b>的設計

    基于LVGL驅動的OLED的FFT聲音實時可視化

    本項目旨在利用LVGL驅動的 Xiao-expansion-board的OLED顯示實現(xiàn)FFT聲音數(shù)據(jù)的實時可視化。關鍵內容包括利用LVGL
    的頭像 發(fā)表于 11-25 14:20 ?5306次閱讀
    基于<b class='flag-5'>LVGL</b>驅動的OLED<b class='flag-5'>屏</b>的FFT聲音實時<b class='flag-5'>可視化</b>

    10分鐘上手平臺GUI開發(fā):第一個LVGL圖形應用

    ,在平臺上支持LVGL能夠更好地發(fā)揮其優(yōu)勢,為開發(fā)者帶來更多便利。一環(huán)境搭建:5分鐘極速配置1.
    的頭像 發(fā)表于 06-06 18:41 ?2866次閱讀
    10分鐘上手<b class='flag-5'>睿</b><b class='flag-5'>擎</b>平臺GUI開發(fā):第一個<b class='flag-5'>LVGL</b>圖形應用

    基于輕松玩轉CANopen電機控制

    在工業(yè)自動領域,穩(wěn)定高效的設備間通信是核心。CANopen協(xié)議憑借其可靠性,成為眾多工業(yè)設備(如伺服電機)的首選通信標準。今天,我們就來展示如何利用RT-Thread
    的頭像 發(fā)表于 07-19 09:04 ?5958次閱讀
    基于<b class='flag-5'>睿</b><b class='flag-5'>擎</b><b class='flag-5'>派</b>輕松玩轉CANopen<b class='flag-5'>電機</b><b class='flag-5'>控制</b>

    EtherCAT多軸控制技術:如何實現(xiàn)低抖動高精度運動控制 | 深度解析

    在工業(yè)自動領域,運動控制的精度和穩(wěn)定性直接決定了生產效率和產品質量。近日,SDKV1.5.0版本重磅發(fā)布,其中EtherCAT多軸
    的頭像 發(fā)表于 10-15 18:39 ?6148次閱讀
    <b class='flag-5'>睿</b><b class='flag-5'>擎</b><b class='flag-5'>EtherCAT</b>多軸<b class='flag-5'>控制</b><b class='flag-5'>技術</b>:如何<b class='flag-5'>實現(xiàn)</b>低抖動高精度運動<b class='flag-5'>控制</b> | 深度解析

    基于的工業(yè)FOC無刷電機控制系統(tǒng)與WEB推流監(jiān)看系統(tǒng)| 技術集結

    需人員到場,導致運維效率較低。嵌入式開發(fā)板具備串口外設接口與網絡傳輸能力,可同時承載控制與監(jiān)看需求,因此本項目基于該硬件展開開發(fā)。項目通過串口
    的頭像 發(fā)表于 11-26 18:25 ?3385次閱讀
    基于<b class='flag-5'>睿</b><b class='flag-5'>擎</b><b class='flag-5'>派</b>的工業(yè)FOC無刷<b class='flag-5'>電機</b><b class='flag-5'>控制</b>系統(tǒng)與WEB推流監(jiān)看系統(tǒng)| <b class='flag-5'>技術</b><b class='flag-5'>集結</b>

    EtherCAT總線之IO模塊讀寫

    在上一篇文章《【】CANOpen總線之IO模塊讀寫(DS401協(xié)議)》我寫了關于派上CANOpen的IO模塊通信,為什么先寫CAN
    的頭像 發(fā)表于 12-31 19:07 ?5665次閱讀
    【<b class='flag-5'>睿</b><b class='flag-5'>擎</b><b class='flag-5'>派</b>】<b class='flag-5'>EtherCAT</b>總線之IO模塊讀寫

    深度解析 | 低抖動高精度EtherCAT多軸控制實現(xiàn)與實踐案例

    : l RC3506工業(yè)開發(fā)板 l EtherCAT伺服驅動器(推薦匯川SV660N或LICHUAN-LC10E) l
    發(fā)表于 12-09 17:17

    labview通過Ethercat控制伺服電機

    現(xiàn)在伺服電機很多都支持Ethercat總線了,這個總線速度很牛。有玩過labview通過Ethercat控制
    發(fā)表于 10-16 19:15

    伺服電機的種類與區(qū)別_伺服電機簡單控制方法

    伺服電機是一種能夠精確控制運動的電機,通常包括以下幾種類型:   直流伺服電機:直流
    發(fā)表于 03-12 10:20 ?5110次閱讀

    Arduino控制伺服電機的超級簡單方法

    電子發(fā)燒友網站提供《Arduino控制伺服電機的超級簡單方法.zip》資料免費下載
    發(fā)表于 06-28 09:51 ?0次下載
    <b class='flag-5'>用</b>Arduino<b class='flag-5'>控制</b><b class='flag-5'>伺服</b><b class='flag-5'>電機</b>的超級<b class='flag-5'>簡單</b>方法

    如何實現(xiàn)園區(qū)大可視化?

    孿生可視化 構建平臺利用Web三維可視化技術對現(xiàn)實場景進行仿真,實現(xiàn)園區(qū)級業(yè)務場景 的可視化呈現(xiàn),助力企業(yè)快速完成項目的實施。
    的頭像 發(fā)表于 06-19 15:39 ?1205次閱讀
    如何<b class='flag-5'>實現(xiàn)</b>園區(qū)大<b class='flag-5'>屏</b><b class='flag-5'>可視化</b>?

    智慧大是如何實現(xiàn)數(shù)據(jù)可視化的?

    智慧大,作為數(shù)據(jù)可視化的重要載體,已在城市管理、交通監(jiān)控、商業(yè)運營等領域廣泛應用。本文旨在闡述智慧大實現(xiàn)數(shù)據(jù)可視化的關鍵
    的頭像 發(fā)表于 06-04 15:02 ?1597次閱讀
    智慧大<b class='flag-5'>屏</b>是如何<b class='flag-5'>實現(xiàn)</b>數(shù)據(jù)<b class='flag-5'>可視化</b>的?

    伺服電機簡單控制方法是什么

    伺服電機是一種高精度、高響應速度的電機,廣泛應用于工業(yè)自動、機器人、航空航天等領域。伺服電機
    的頭像 發(fā)表于 06-05 15:49 ?2314次閱讀

    基于輕松玩轉EtherCAT主站,實現(xiàn)電機精確控制

    總線技術。本次實戰(zhàn)教程將基于平臺,演示實現(xiàn)EtherCAT主站開發(fā)CSP模式
    的頭像 發(fā)表于 07-30 17:03 ?5247次閱讀
    基于<b class='flag-5'>睿</b><b class='flag-5'>擎</b><b class='flag-5'>派</b>輕松玩轉<b class='flag-5'>EtherCAT</b>主站,<b class='flag-5'>實現(xiàn)</b><b class='flag-5'>電機</b>精確<b class='flag-5'>控制</b>