女人自慰AV免费观看内涵网,日韩国产剧情在线观看网址,神马电影网特片网,最新一级电影欧美,在线观看亚洲欧美日韩,黄色视频在线播放免费观看,ABO涨奶期羡澄,第一导航fulione,美女主播操b

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

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

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

EtherCAT運動控制器實時數(shù)據(jù)的Qt示波器

正運動技術(shù) ? 來源:正運動技術(shù) ? 作者:正運動技術(shù) ? 2025-04-17 17:12 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

ZMC408CE 高性能總線型運動控制器

ZMC408CE是正運動推出的一款多軸高性能EtherCAT總線運動控制器,具有EtherCAT、EtherNET、RS232、CAN和U盤等通訊接口,ZMC系列運動控制器可應(yīng)用于各種需要脫機或聯(lián)機運行的場合。

wKgZPGgAt4WAdWYrAAEo7uUNtPk327.png

ZMC408CE支持PLC、Basic、HMI組態(tài)三種編程方式。PC上位機API編程支持C#C++、LabVIEW、Matlab、Qt、Linux、VB.Net、Python等接口。

wKgZO2gAt4WAU0psAABx-OLptfo658.png

ZMC408CE硬件功能特性:

1.支持8軸運動控制(脈沖+EtherCAT總線),EtherCAT同步周期可快至125us;

2.24路通用輸入、16路通用輸出,模擬AD/DA各兩路;

3.8路10MHz高速差分脈沖輸出,總線軸、脈沖軸可混合插補;

4.高性能處理器,提升運算速度、響應(yīng)時間和掃描周期等;

5.一維/二維/三維、多通道視覺飛拍,高速高精;

6.位置同步輸出PSO,連續(xù)軌跡加工中對精密點膠膠量控制和激光能量控制等;

7.多軸同步控制,多坐標(biāo)系獨立控制等;

8.直線插補、任意空間圓弧插補、螺旋插補、樣條插補等;

9.應(yīng)用靈活,可PC上位機開發(fā),也可脫機獨立運行;

ZMC408CE視頻介紹,點擊→“高性能EtherCAT總線運動控制器,帶你玩轉(zhuǎn)“8通道獨立PSO”應(yīng)用場景”查看。

更多關(guān)于ZMC408CE的詳情介紹,點擊“推薦|8通道PSO的高性能EtherCAT總線運動控制器”查看。

PCIE464M PCIe EtherCAT總線運動控制卡

PCIE464M是一款基于PCIe的PCI Express的EtherCAT總線運動控制卡,具有多項實時和高精度運動控制控制功能。

wKgZPGgAt4WATz6SAAOtTgnHN88368.png

PCIE464M運動控制卡上自帶16進16出,第三方圖像處理工控機或PC無需額外配置IO數(shù)據(jù)采集卡和PLC,即可實現(xiàn)IPC形態(tài)的機器視覺運動控制一體機,簡化硬件架構(gòu),節(jié)省成本,軟硬件一體化。

wKgZO2gAt4aAFbhiAAExbnu2HGs308.png

PCIE464M硬件功能特性:

1.可選6-64軸運動控制,支持EtherCAT總線/脈沖/步進伺服驅(qū)動器;

2.聯(lián)動軸數(shù)最高可達16軸,運動周期最小為100μs;

3.標(biāo)配16進16出,其中4路高速鎖存輸入、4路高速PWM和12路高速硬件比較輸出PSO;

4.支持PWM輸出、1D/2D/3D PSO硬件位置比較輸出、視覺飛拍、連續(xù)軌跡插補等;

5.支持30+機械手模型正逆解模型算法,比如SCARA、Delta、UVW、4軸/5軸 RTCP...;

6.支持掉電存儲和掉電中斷,多重加密,提供程序更安全機制;

7.8路單端脈沖軸、4路單端編碼器軸;

8.具有一維、二維螺距補償控制,實現(xiàn)更高的加工精度;

PCIE464M視頻介紹,點擊→“超高速PCle EtherCAT控制卡PCIE464M,即刻提升高速高精智能裝備生產(chǎn)力!”查看。

更多關(guān)于PCIE464M的詳情介紹,點擊“PCIE464M-高速高精,超高速PCIe EthrtCAT實時運動控制卡”查看。

ECI2A18B 高性價比10軸運動控制卡

ECI2A18B是正運動推出的一款高性價比10軸脈沖型、模塊化的網(wǎng)絡(luò)型運動控制卡,采用優(yōu)化的網(wǎng)絡(luò)通訊協(xié)議可以實現(xiàn)實時的運動控制,同時支持多種通信協(xié)議,方便與其他工業(yè)控制設(shè)備連接和集成。安裝配置相對便捷,適合于模塊化和靈活性要求較高的控制系統(tǒng)。

wKgZPGgAt4aANiSEAAGyv0AKVLc134.png

ECI2A18B控制卡最大可擴展至12脈沖軸,支持8路高速輸入和4路高速輸出,集成豐富的運動控制功能,包含多軸點位運動、電子凸輪,直線插補,圓弧插補,連續(xù)插補運動等,滿足多樣化的工業(yè)應(yīng)用需求。

wKgZO2gAt4aAZxSUAAHPBwoyKto899.png


ECI2A18B硬件功能特性:

1.支持6路差分脈沖軸+4路單端脈沖軸運動控制;

2.支持1路專用的手輪輸入接口;

3.差分脈沖軸最大輸出脈沖頻率10MHz;

4.標(biāo)配24+12進16+6出,其中支持4路高速鎖存,4路高速PWM,2路高速硬件比較輸出PSO(可選支持HW2功能);

5.可支持RTSys+其他高級上位機編程語言的混合編程支持;

6.支持RTBasic多任務(wù)編程;


ECI2A18B視頻介紹,點擊→“【加量不加價】高性價比十軸脈沖運動控制卡ECI2A18B 讓您的設(shè)備在自動化行業(yè)內(nèi)卷中脫穎而出!”查看。

更多關(guān)于ECI2A18B的詳情介紹,點擊“【加量不加價】正運動網(wǎng)絡(luò)型運動控制卡ECI2618B/ECI2A18B”查看。

一、RTSys示波器介紹

正運動RTSys軟件提供了示波器采集與分析工具,通過該工具可以把系統(tǒng)內(nèi)部的系統(tǒng)變量與數(shù)據(jù)轉(zhuǎn)換成圖形顯示,便于研究各種信號的變化趨勢與數(shù)據(jù)測量的過程。

示波器利用控制器內(nèi)部處理的數(shù)據(jù),把數(shù)據(jù)顯示成波形,利用示波器可以顯示各種不同的信號。

wKgZPGgAt4aAGJIkAAHJoUYpBio909.png

詳情點擊→運動控制看的更清楚細致!RTSys示波器功能簡介。

二、QT程序開發(fā)流程

1.在Qt Creator菜單選擇“文件”→“新建文件或項目”,打開創(chuàng)建項目向?qū)А_x擇Application項目集,創(chuàng)建Qt Widgets Application項目,設(shè)置項目名稱和保存位置。

wKgZO2gAt4eAE2-bAAHGCEvdcxU901.png

2.導(dǎo)入廠家提供的相關(guān)函數(shù)庫及頭文件。

(1)將zmotion.h和zauxdll2.h頭文件、zauxdll.dll和zmotion.dll以及zmotion.lib和zauxdll.lib庫復(fù)制到新建的項目文件夾中。

wKgZPGgAt4eAHfB0AANigNED2Mg428.png

(2)在Qt Creator選擇新建的Qt項目右擊選擇“添加庫...”→“外部庫”點擊下一步,將剛才復(fù)制到項目文件夾上的zmotion.lib和zauxdll.lib庫文件導(dǎo)入到項目中。

wKgZO2gAt4eAPnUfAAEXZkJi22c172.png

3.在Qt Creator下右擊新建的Qt項目,選擇“添加現(xiàn)有文件...”,將之前復(fù)制到項目文件下的頭文件zmotion.h和zauxdll2.h添加到項目中。

wKgZPGgAt4iAFGexAALWXf-fS9g974.png


三、相關(guān)指令介紹

1.相關(guān)BASIC指令介紹

(1)SCOPE-- 數(shù)據(jù)采樣

wKgZO2gAt4iAaUADAAJ5dyi7sIQ461.png

(2)SCOPE_POS -- 采樣點數(shù)

wKgZO2gAt42AMDhQAAEqtW7XM-M328.png

(3)TRIGGER -- 觸發(fā)示波器

wKgZPGgAt42AGLMvAAGZjpCxQRk146.png

使用說明:

先使用SCOPE指令確定需要采集的數(shù)據(jù)、采集周期、數(shù)據(jù)存放位置及使能。(例如:SCOPE(ON,1,0,8000,MPOS(0),MSPEED(0),MPOS(1),MSPEED(1)),表示每間隔1個系統(tǒng)周期采集一次MPOS(0)、MSPEED(0)、MPOS(1)、MSPEED(1)的數(shù)據(jù)分別存儲至被平均分割的TABLE(0)至TABLE(7999)中,如MPOS(0) → TABLE(0-1999)、MSPEED(0)→TABLE(2000-3999)、MPOS(1)→TABLE(4000-5999)、MSPEED(1)→TABLE(6000-7999)中),后續(xù)需要使用TRIGGER開始數(shù)據(jù)的抓?。ㄈ绻枰褂眠B續(xù)采集需要帶參數(shù)1如TRIGGER(1));

根據(jù)SCOPE_POS返回的值確定當(dāng)前最新的數(shù)據(jù)保存至TABLE的何處(如SCOPE_POS的值為500表示最新的數(shù)據(jù)存放至TABLE(499)、TABLE(2499)、TABLE(4499)、TABLE(6499)中),根據(jù)上次與此次的最新數(shù)據(jù)存放位置即可確定此次需要加入至波形曲線中的內(nèi)容,最后使用SCOPE(OFF)關(guān)閉數(shù)據(jù)采集。

RTSys示波器波形展示:

wKgZO2gAt46ARyzbAAGqq6svq-c308.png

QT例程示波器波形展示:

wKgZPGgAt46ACHPZAAFUducx6HQ468.png

2.上位機在線命令接口的使用

由于我們的函數(shù)庫中暫時沒有對上述的BASIC指令進行封裝,所以需要通過在線命令這個萬能的API接口進行上述BASIC指令的下發(fā),下面給大家介紹一下ZAux_DirectCommand和ZAux_Execute這兩個在線命令的API接口的使用。

wKgZO2gAt46ATQVIAAGVg8fv4tE083.pngwKgZPGgAt46ADeWPAAGhO8zI1Sw789.png

通過在線命令下發(fā)BASIC指令的API接口有ZAux_DirectCommand(直接方式)和ZAux_Execute(緩沖方式)這兩種。

wKgZO2gAt4-ACT-UAAC8iU9i6aM303.png

①直接方式:該方式由PC直接下發(fā)BASIC指令至控制器,下發(fā)即執(zhí)行,響應(yīng)速度塊,雖有部分BASIC指令不支持但仍然推薦使用。

②緩沖方式:該方式需要將BASIC指令放入緩沖列中等待執(zhí)行,響應(yīng)速度較慢但可以執(zhí)行所有命令,只推薦在BASIC指令無法通過直接方式下發(fā)時使用。

例如:設(shè)置軸速度函數(shù)ZAux_Direct_SetSpeed(ZMC_HANDLE handle, int iaxis, float fValue)的源碼如下:

/*************************************************************
Description://設(shè)置軸速度,單位為units/s,當(dāng)多軸運動時,作為插補運動的速度
Input://卡鏈接handle
Output://
Return://錯誤碼
*************************************************************/
int32__stdcallZAux_Direct_SetSpeed(ZMC_HANDLEhandle,intiaxis,floatfValue)
{
inti;
int32iresult;
charcmdbuff[2048];
charcmdbuffAck[2048];
if(iaxis>MAX_AXIS_AUX)
{
returnERR_AUX_PARAERR;
}
//生成命令
sprintf(cmdbuff,"SPEED(%d)=%f",iaxis,fValue);
//調(diào)用命令執(zhí)行函數(shù)
returnZAux_DirectCommand(handle,cmdbuff,cmdbuffAck,2048);
}

四、例程原理及實現(xiàn)過程

1.連接控制器

代碼說明:讀取用戶設(shè)置的IP地址并通過函數(shù)接口ZAux_OpenEth來連接控制器。

voidMainWindow::on_ip_link_btn_clicked()
{
intret;
char*tmp_buff=newchar[20];
QStringstr;
QStringstr_title;
//獲取輸入的控制器IP地址
str=ui->ip_list->currentText();
QByteArrayba=str.toLatin1();
tmp_buff=ba.data();
//判斷控制器句柄是否為空,不為空則斷開連接并置句柄為空
if(nullptr!=g_handle)
{
//斷開控制器的連接
ZAux_Close(g_handle);
g_handle=nullptr;
setWindowTitle(QString::fromLocal8Bit("示波器"));
}
//連接控制器
ret=ZAux_OpenEth(tmp_buff,&g_handle);
if(0!=ret)
{
QMessageBox::warning(this,QString::fromLocal8Bit("提示"),QString::fromLocal8Bit("連接失敗"));
}
else
{
QMessageBox::warning(this,QString::fromLocal8Bit("提示"),QString::fromLocal8Bit("連接成功"));
str_title=windowTitle()+tmp_buff;
setWindowTitle(str_title);
}
}

2.開啟示波器

代碼說明:讀取用戶設(shè)置的示波器參數(shù),通過字符串拼接的方式設(shè)置scope指令的參數(shù),trigger(1)指令開啟連續(xù)采集,由于ZAux_DirectCommand暫時不支持這兩個指令的下發(fā),所以通過ZAux_Execute下發(fā)拼接好的basic指令。

voidMainWindow::on_start_scope_btn_clicked()
{
intret;
QStringcmd;
QStringtemp;
chartmp_commandback_buff[20480]={0};
if(nullptr==g_handle)
{
QMessageBox::warning(this,QString::fromLocal8Bit("提示"),QString::fromLocal8Bit("請先連接控制器"));
qDebug()channel_num->currentText().toUInt();
current_acqu_cycle=ui->acquisition_cycle->text().toUInt();
current_time_period=ui->time_period->currentText().toUInt();
/*拼接示波器所需的參數(shù)SCOPE(enable,period,table_start,table_stop,p0[,p1[,p2[,p3[,p4[,p5[,p6[,p7]]]]]]])
enable:使能與否
period:采集周期間隔
table_start:采樣數(shù)據(jù)存儲在TABLE的起始位置
table_stop:TABLE結(jié)束位置,減去起始位置為采樣個數(shù)
p0~p7:采樣數(shù)據(jù)類型,等分存儲在TABLE范圍
拼接采集周期間隔及采樣的起始終止TABLE地址*/
cmd=QString("scope(1,%1,0,%2,").arg(current_time_period).arg(current_acqu_cycle*channel_num-1);
//拼接需采集的數(shù)據(jù)類型
for(inti=0;itableWidget->cellWidget(i,2);
QComboBox*sex=(QComboBox*)widgetSex;
cmd.append(sex->currentText());
cmd.append("(");
cmd.append(ui->tableWidget->item(i,1)->text());
cmd.append(")");
cmd.append(",");
}
cmd.chop(1);
cmd.append(")");
cmd.append("trigger(1)");
//清除波形圖中的數(shù)據(jù)
for(inti=0;icustomPlot->graph(i)->data().data()->clear();
ui->customPlot->xAxis->setRange(0,5*customplot_x_scale);
}
//重繪波形圖
ui->customPlot->replot();
//通過ZAux_Execute函數(shù)接口下發(fā)上面拼接的BASIC指令
ret=ZAux_Execute(g_handle,QByteArray(cmd.toLatin1()).data(),tmp_commandback_buff,20480);
if(ret==0)
{
//把波形圖參數(shù)信息傳遞給獲取table數(shù)據(jù)至波形圖的子線程中
emitemit_para_int(current_acqu_cycle,current_time_period,channel_num,customplot_x_scale);
//如果示波器已開啟則先停止獲取table數(shù)據(jù)至波形圖的子線程再開啟線程
if(scope_status==1)
{
emitGetDataStop();
GetDataThread.wait();
GetDataThread.start();
}
else
{
//開啟獲取table數(shù)據(jù)至波形圖的子線程
GetDataThread.start();
scope_status=1;
}
}
else
{
qDebug()

3.讀取對應(yīng)table中的數(shù)據(jù)并顯示

代碼說明:根據(jù)上次的TABLE數(shù)據(jù)更新位置與此次使用SCOPE_POS返回的最新數(shù)據(jù)存放的TABLE位置確定此次使用ZAux_Direct_GetTable獲取控制器中TABLE寄存器中的數(shù)據(jù)位置,將從TABLE寄存器中獲取到的數(shù)據(jù)加載進顯示的曲線,最后重新繪制圖形。

voidGetData::SetData(intType,intNum)
{
intret;
//Type為0則表示當(dāng)前采樣至的table位置比上次的要大,只需采集兩者之間的table數(shù)據(jù)即可
if(Type==0)
{
//獲取table中的數(shù)據(jù)
ret=ZAux_Direct_GetTable(g_handle,start_pos+current_acqu_cycle*Num,total_pos,NewData);
if(ret==0)
{
//向波形曲線中寫入從table中獲取的數(shù)據(jù)
for(inti=0;igraph(Num)->addData(CustomPlot->graph(Num)->dataCount()*(current_time_period/1000.0),NewData[i]);
}
}
else{
qDebug()graph(Num)->addData(CustomPlot->graph(Num)->dataCount()*(current_time_period/1000.0),NewData[i]);
}
}
else{
qDebug()graph(Num)->addData(CustomPlot->graph(Num)->dataCount()*(current_time_period/1000.0),NewData[i]);
}
}
else{
qDebug()

4.例程使用與效果展示

(1)連接控制器,先通過下拉框選擇控制器IP地址或直接輸入IP地址,之后連接即可。

wKgZPGgAt4-Ab1XIAAGWT7StMK4002.png

(2)設(shè)置參數(shù)開啟示波器,先設(shè)置示波器參數(shù)再開啟示波器。

wKgZO2gAt4-ALHFNAAHZ40iVQ0Y342.png

(3)停止示波器,可通過滾動條調(diào)整顯示位置,先停止示波器再通過滾動條調(diào)整顯示位置,可修改波形參數(shù)使波形顯示效果更好。

wKgZPGgAt4-AIovVAAE-Q-OaY1E563.png

5.教學(xué)視頻講解請點擊→“EtherCAT運動控制器實時數(shù)據(jù)的Qt示波器”查看。

完整代碼獲取地址

wKgZO2gAt5CAJhAmAACqolMGbS4763.png

本次,正運動技術(shù)EtherCAT運動控制器實時數(shù)據(jù)的Qt示波器,就分享到這里。

更多精彩內(nèi)容請關(guān)注“正運動小助手”公眾號,需要相關(guān)開發(fā)環(huán)境與例程代碼,請咨詢正運動技術(shù)銷售工程師:400-089-8936。

本文由正運動技術(shù)原創(chuàng),歡迎大家轉(zhuǎn)載,共同學(xué)習(xí),一起提高中國智能制造水平。文章版權(quán)歸正運動技術(shù)所有,如有轉(zhuǎn)載請注明文章來源。

wKgZPGgAt5CAI7BNAAKSV_AauoU345.png

正運動技術(shù)專注于運動控制技術(shù)研究和通用運動控制軟硬件產(chǎn)品的研發(fā),是國家級高新技術(shù)企業(yè)。正運動技術(shù)匯集了來自華為、中興等公司的優(yōu)秀人才,在堅持自主創(chuàng)新的同時,積極聯(lián)合各大高校協(xié)同運動控制基礎(chǔ)技術(shù)的研究,是國內(nèi)工控領(lǐng)域發(fā)展最快的企業(yè)之一,也是國內(nèi)少有、完整掌握運動控制核心技術(shù)和實時工控軟件平臺技術(shù)的企業(yè)。主要業(yè)務(wù)有:運動控制卡_運動控制器_EtherCAT運動控制卡_EtherCAT控制器_運動控制系統(tǒng)_視覺控制器__運動控制PLC_運動控制_機器人控制器_視覺定位_XPCIe/XPCI系列運動控制卡等。

審核編輯 黃宇

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

    關(guān)注

    2

    文章

    450

    瀏覽量

    25280
  • ethercat
    +關(guān)注

    關(guān)注

    19

    文章

    1112

    瀏覽量

    40006
  • 正運動技術(shù)
    +關(guān)注

    關(guān)注

    0

    文章

    120

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    EtherCAT運動控制器配套用手持示教盒快速入門 #正運動技術(shù) #運動控制器 #示教盒 #正運動

    運動控制器
    正運動技術(shù)
    發(fā)布于 :2024年11月05日 14:08:22

    SSI絕對值編碼EtherCAT運動控制器中的應(yīng)用

    SSI絕對值編碼EtherCAT運動控制器中的應(yīng)用
    的頭像 發(fā)表于 10-09 10:13 ?1476次閱讀
    SSI絕對值編碼<b class='flag-5'>器</b>在<b class='flag-5'>EtherCAT</b><b class='flag-5'>運動</b><b class='flag-5'>控制器</b>中的應(yīng)用

    開放式激光振鏡運動控制器在Ubuntu+Qt下CAD圖形標(biāo)刻

    開放式激光振鏡運動控制器再Ubuntu+Qt下CAD圖形標(biāo)刻
    的頭像 發(fā)表于 09-18 15:12 ?704次閱讀
    開放式激光振鏡<b class='flag-5'>運動</b><b class='flag-5'>控制器</b>在Ubuntu+<b class='flag-5'>Qt</b>下CAD圖形標(biāo)刻

    EtherCAT運動控制器上位機開發(fā)之Python+Qt(三):PDO配置與SDO讀寫# 運動控制器# 控制

    運動控制器
    正運動技術(shù)
    發(fā)布于 :2024年08月22日 09:11:13

    EtherCAT運動控制器上位機之Python+Qt(一):鏈接與單軸運動# 正運動技術(shù)# 運動控制器

    運動控制器
    正運動技術(shù)
    發(fā)布于 :2024年07月31日 14:35:13

    BissC絕對值編碼EtherCAT運動控制器中的應(yīng)用

    BissC多圈絕對值編碼EtherCAT運動控制器中的應(yīng)用!
    的頭像 發(fā)表于 07-24 10:02 ?1521次閱讀
    BissC絕對值編碼<b class='flag-5'>器</b>在<b class='flag-5'>EtherCAT</b><b class='flag-5'>運動</b><b class='flag-5'>控制器</b>中的應(yīng)用