色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

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

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

3天內不再提示

自定義電子凸輪曲線的運動:EtherCAT超高速實時運動控制卡XPCIE1032H上位機C#開發(十三)

正運動技術 ? 來源:正運動技術 ? 作者:正運動技術 ? 2024-02-26 10:55 ? 次閱讀

XPCIE1032H功能簡介

XPCIE1032H是一款基于PCI Express的EtherCAT總線運動控制卡,可選6-64軸運動控制,支持多路高速數字輸入輸出,可輕松實現多軸同步控制和高速數據傳輸。

XPCIE1032H集成了強大的運動控制功能,結合MotionRT7運動控制實時軟核,解決了高速高精應用中,PC Windows開發的非實時痛點,指令交互速度比傳統的PCI/PCIe快10倍。

wKgZomVfDAyAFMr3AAkZwl5y9mw590.png

XPCIE1032H支持PWM,PSO功能,板載16進16出通用IO口,其中輸出口全部為高速輸出口,可配置為4路PWM輸出口或者16路高速PSO硬件比較輸出口。輸入口含有8路高速輸入口,可配置為4路高速色標鎖存或兩路編碼器輸入。

XPCIE1032H搭配MotionRT7實時內核,使用本地LOCAL接口連接,通過高速的核內交互,可以做到更快速的指令交互,單條指令與多條指令一次性交互時間可以達到3-5us左右。

wKgaomVfDamAezYKAAMg97tWgj8671.png

?XPCIE1032H與MotionRT7實時內核的配合具有以下優勢:

wKgaomVfDbWAXMEnAAD8mJdADkQ556.png

1.支持多種上位機語言開發,所有系列產品均可調用同一套API函數庫;

2.借助核內交互,可以快速調用運動指令,響應時間快至微秒級,比傳統PCI/PCIe快10倍;

3.解決傳統PCI/PCIe運動控制卡在Windows環境下控制系統的非實時性問題;

4.支持一維/二維/三維PSO(高速硬件位置比較輸出),適用于視覺飛拍、精密點膠和激光能量控制等應用;

5.提供高速輸入接口,便于實現位置鎖存;

6.支持EtherCAT總線和脈沖輸出混合聯動、混合插補。

wKgZomWwa2iAYhn1AAELW5B4yGw334.png

?使用XPCIE1032H和MotionRT7進行項目開發時,通常需要進行以下步驟:

1.安裝驅動程序,識別XPCIE1032H;

2.打開并執行文件“MotionRT710.exe”,配置參數和運行運動控制實時內核;

3.使用ZDevelop軟件連接到控制器,進行參數監控。連接時請使用PCI/LOCAL方式,并確保ZDevelop軟件版本在3.10以上;

4.完成控制程序開發,通過LOCAL鏈接方式連接到運動控制卡,實現實時運動控制。

wKgZomVobjKAPLn_AAGwsQpNe1Q966.png

?與傳統PCI/PCIe卡和PLC的測試數據結果對比:

wKgaomVobjiAOGwqAAAu1S7GuhY671.png

我們可以從測試對比結果看出,XPCIE1032H運動控制卡配合實時運動控制內核MotionRT7,在LOCAL鏈接(核內交互)的方式下,指令交互的效率是非常穩定,當測試數量從1w增加到10w時,單條指令交互時間與多條指令交互時間波動不大,非常適用于高速高精的應用。

XPCIE1032H控制卡安裝

關閉計算機電源

打開計算機機箱,選擇一條空閑的XPCIE卡槽,用螺絲刀卸下相應的擋板條。

將運動控制卡插入該槽,擰緊擋板條上的固定螺絲。

XPCIE1032H驅動安裝與建立連接參考往期文章EtherCAT超高速實時運動控制卡XPCIE1032H上位機C#開發(一):驅動安裝與建立連接。

一、C#語言進行運動控制項目開發

1.解壓下載的安裝包找到“ Zmcaux.cs ”,“ zauxdll.dll ”,“ zmotion.dll ”放入到項目文件中。

(1)“Zmcaux.cs”放在項目根目錄文件中,與bin目錄同級。

wKgaomXb_CCARgIaAAC0c9UGigk982.png

(2)“zauxdll.dll”,“zmotion.dll”放在bin → Debug。

wKgZomXb_CWANxn4AADce15pLdE094.png

2.用vs打開新建的項目文件,在右邊的解決方案資源管理器中點擊顯示所有,然后鼠標右鍵點擊zmcaux.cs文件,點擊包括在項目中。

wKgZomXb_CiAQzM-AAGyDXvpDo4773.png

3.雙擊Form1.cs里面的Form1,出現代碼編輯界面,在文件開頭寫入using cszmcaux,并聲明控制器句柄g_handle。

wKgaomXb_C2AX8nmAADtFnsh6jY426.png

二、PC函數介紹

PC函數手冊也在光盤資料里面,具體路徑如下:“光盤資料8.PC函數函數庫2.1ZMotion函數庫編程手冊 V2.1.pdf”。

wKgZomXb_D6ALl-2AABWF4Kea0o870.pngwKgaomXb_E6AJOiTAABwXG7S6z0533.pngwKgZomXb_E6AR0tWAABnSqBZ1Dc724.pngwKgaomXb_E6AWWhoAAA_PF7PABk090.png

三、C#進行自定義電子凸輪曲線的運動

自定義電子凸輪曲線的運動人機交互界面如下。

wKgaomXb_GOALxiuAAC1HJzpONQ077.png

可根據需求,選擇導入對應凸輪表數據或使用自定義數據。

1.在Form1的構造函數中調用接口ZAux_FastOpen(),使在系統初始化的時候自動鏈接控制器。

private void button1_Click(object sender, EventArgs e)
{
   zmcaux.ZAux_OpenEth(IP_List.Text, out g_handle);
   if (g_handle != (IntPtr)0)
   {
       timer1.Enabled = true;
       //設置鏈接狀態按鈕
       status.BackColor = System.Drawing.Color.Green;
       status.Text = "已鏈接";
   }
   else
   {
       MessageBox.Show("控制器鏈接失敗,請檢查MotionRT7是否開啟!", "警告");
       //設置鏈接狀態按鈕
       status.BackColor = System.Drawing.Color.Red;
       status.Text = "已斷開";
   }
}

2.通過定時器更新參數信息

//定時器
private void timer1_Tick(object sender, EventArgs e)
{
   if(g_handle != null)
   {
       float dpos = 0, speed = 0;
       zmcaux.ZAux_Direct_GetDpos(g_handle, Convert.ToInt32(textBox_axis.Text),ref dpos);
       label_dpos.Text = Convert.ToString(dpos);
       zmcaux.ZAux_Direct_GetSpeed(g_handle, Convert.ToInt32(textBox_axis.Text), ref speed);
       label_speed.Text = Convert.ToString(speed);
   }
   else
   {
       status.BackColor = System.Drawing.Color.Red;
       status.Text = "已斷開";
   }
}

3.利用提前加載好的凸輪表數據,利用cam指令進行凸輪運動。

//凸輪表運動啟動
private void button3_Click(object sender, EventArgs e)
{
   if (g_handle == null)
       return;
   zmcaux.ZAux_Direct_SetUnits(g_handle, Convert.ToInt32(textBox_axis.Text),Convert.ToSingle(textBox_unit.Text));
   zmcaux.ZAux_Direct_SetSpeed(g_handle, Convert.ToInt32(textBox_axis.Text), Convert.ToSingle(textBox_speed.Text));
   zmcaux.ZAux_Direct_SetAccel(g_handle, Convert.ToInt32(textBox_axis.Text), Convert.ToSingle(textBox_accel.Text));
   zmcaux.ZAux_Direct_SetDecel(g_handle, Convert.ToInt32(textBox_axis.Text), Convert.ToSingle(textBox_decel.Text));
   zmcaux.ZAux_Direct_SetAtype(g_handle, Convert.ToInt32(textBox_axis.Text), 1);
   //進行電子凸輪運動
   //設置運動總時間為5s
   zmcaux.ZAux_Direct_Cam(g_handle, Convert.ToInt32(textBox_axis.Text),0, CamNum, Convert.ToSingle(textBox_unit.Text), Convert.ToSingle(textBox_speed.Text)*5);
}

4.外部導入凸輪表數據加載。

private void button_data_Click(object sender, EventArgs e)
{
   dataGridView_data.Columns.Clear();
   DataGridViewTextBoxColumn ActPos = new DataGridViewTextBoxColumn();
   ActPos.Name = "ActPos";
   ActPos.DataPropertyName = "ActPos";
   ActPos.HeaderText = "位置";
   dataGridView_data.Columns.Add(ActPos);
   OpenFileDialog ZaoLangFile = new OpenFileDialog();
   ZaoLangFile.Filter = "文本文件(*.txt;)| *.txt;| 所有文件| *.*; ";
   ZaoLangFile.ValidateNames = true;
   ZaoLangFile.CheckPathExists = true;
   ZaoLangFile.CheckFileExists = true;
   if (ZaoLangFile.ShowDialog() == DialogResult.OK)
   {
       string strFileName = ZaoLangFile.FileName;
       //其他代碼
       //FileStream FileRead = new FileStream(strFileName, FileMode.OpenOrCreate, FileAccess.Read);
       string DataTest = File.ReadAllText(strFileName);
       string[] strArray = DataTest.Split(new string[] { "rn" }, StringSplitOptions.None);
       for (int i = 0; i < strArray.Length - 1; i++)
       {
           int index = dataGridView_data.Rows.Add();
           dataGridView_data.Rows[index].Cells[0].Value = strArray[i];
       }
       float[] Tablelist = new float[strArray.Length];
       for (int i = 0; i < strArray.Length - 1; i++)
       {
           Tablelist[i] = Convert.ToSingle(strArray[i]);
       }
       zmcaux.ZAux_Direct_SetTable(g_handle,0,strArray.Length,Tablelist);
       //記錄當前寫入凸輪表數據有多少
       CamNum = strArray.Length - 2;
   }
}

5.自定義凸輪表數據加載。

private void button6_Click(object sender, EventArgs e)
{
   dataGridView_data.Columns.Clear();
   DataGridViewTextBoxColumn ActPos = new DataGridViewTextBoxColumn();
   ActPos.Name = "ActPos";
   ActPos.DataPropertyName = "ActPos";
   ActPos.HeaderText = "位置";
   dataGridView_data.Columns.Add(ActPos);
   float[] CustomTable = new float[100];
   for (int i = 0; i < 100; i++)
   {
       CustomTable[i] = (float )((Math.Sin(Math.PI*2*i/100) / (Math.PI*2)) + i / 100) * 500;
       int index = dataGridView_data.Rows.Add();
       dataGridView_data.Rows[index].Cells[0].Value = CustomTable[i];
   }
   zmcaux.ZAux_Direct_SetTable(g_handle, 0, 100, CustomTable);
   CamNum = 100;
}

四、調試與監控

01 電子凸輪

1.組成部分

電子凸輪是利用構造的凸輪曲線來模擬機械凸輪,以達到機械凸輪系統相同的凸輪軸與主軸之間相對運動的軟件系統,通過控制器控制伺服電機來模擬機械凸輪的功能,不需要另外安裝機械結構,電子凸輪又稱Electronic CAM。

2.工作原理

電子凸輪屬于多軸同步運動,這種運動是基于主軸外加一個或多個從軸系統,是在機械凸輪的基礎上發展而來,電子凸輪多用于周期性的曲線運動場合。如下圖,機械凸輪按照凸輪的輪廓可以得出一段轉動角度與加工位置運動軌跡,此軌跡為弧線,將該段弧線分解成無數個直線軌跡,組合起來得到一串趨近于弧線運動軌跡,電子凸輪直接將此段軌跡運動參數裝入運動指令,即可控制軸走出目標軌跡。

wKgaomXb_PKAO5n3AABYyQ9RnE0244.png

設置一段電子凸輪的運動程序裝入控制器,通過編碼器將位置信號反饋給控制器,控制器將接收到的位置信號進行處理后輸出給伺服驅動器,伺服驅動器控制多個軸同步運動完成預設軌跡。

3.優點

(1)電子凸輪的使用使機器的控制精度提高,控制距離加遠,故障率降低,可靠性提高;

(2)簡化了機構,使機構更加靈活,使調試和維修變得簡便。

(3)電子凸輪用軟件來控制信號,改變程序的相關運動參數就能改變運動曲線,應用靈活性高,工作可靠,操作簡單,不需要額外安裝機械構件,因而不存在磨損的情況。

02 同步跟蹤

同步追蹤是一種常見的凸輪應用,其動作與“追剪”類似,都是要求從軸(伺服)的位置在工作時與主軸同步,差別是“追剪”主要用于連續料的定長切割,而“同步追蹤”則用于隨機料(也就是物品出現的時機不固定),因此啟動信號是根據感測器,觸發后只追蹤一次,設定的距離到達便自動回到起始位置,等下次觸發信號收到才會再次追蹤,常應用于流水線,例如同步噴漆,瓶罐注料,物品夾取等應用。

03 自動凸輪

自動凸輪是凸輪運動的一種,主要針對兩個軸之間的主從跟隨運動,用戶可以通過簡單設置幾個相關參數,便可以構建主軸與從軸之間的運動關系,位置關系不是存儲于TABLE表中,靠指令參數設置每段跟隨距離和變速過程,運動過程中從軸的速度自動計算以匹配主軸,常見運動過程有跟隨加速、減速、同步。

自動凸輪指令有MOVELINK、MOVESLINK、FLEXLINK等,常見應用場合有追剪、飛剪、輪切。

本例程介紹為CAM凸輪表運動的使用。

ZAux_Direct_Cam(ZMC_HANDLE handle,int iaxis, int istartpoint, int iendpoint,float ftablemulti, float fDistance)

ZAux_Direct_Cam()指令根據存儲在TABLE中的數據來決定軸的運動,這些Table數據值對應運動軌跡的位置,是相對于運動起始點的絕對位置。

注:兩個或多個ZAux_Direct_Cam指令可以同時使用同一段TABLE數據區進行操作。

運動的總時間由設置速度和第四個參數決定,運動的實際速度根據TABLE軌跡與時間自動匹配。

TBALE數據需要手動設置,第一個數據為引導點,建議設為0。TABLE數據*ftablemulti這個比例=發出的脈沖數。請確保指令傳遞的距離參數*units是整數個脈沖,否則出現浮點數會導致運動有細微誤差。

如下圖,是運動為造浪設備運動的某段軌跡數據通過導入凸輪表數據加載到控制器的table凸輪表中,運動出來的實際軌跡,并在設置的指定時間內運動完成。

wKgaomXb_SCAR00xAACfEBStjAE505.pngwKgaomXb_SmAE-yLAABiRlEIXWA273.png

如下圖,運行數據為內部自定義sin波形的運動數據,波形可以從圖中看出,運動小線段數據指定時間內軌跡運行完成。

wKgZomXb_S6ADindAADbn_zf4FM736.pngwKgaomXb_TOAexBHAAKXRJVArGI715.png

本次,正運動技術自定義電子凸輪曲線的運動:EtherCAT超高速實時運動控制卡XPCIE1032H上位機C#開發(十三),就分享到這里。

更多精彩內容請關注“正運動小助手”公眾號,需要相關開發環境與例程代碼,請咨詢正運動技術銷售工程師

本文由正運動技術原創,歡迎大家轉載,共同學習,一起提高中國智能制造水平。文章版權歸正運動技術所有,如有轉載請注明文章來源。

審核編輯 黃宇

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

    關注

    41

    文章

    6611

    瀏覽量

    110586
  • PCI
    PCI
    +關注

    關注

    4

    文章

    666

    瀏覽量

    130255
  • 運動控制卡
    +關注

    關注

    7

    文章

    112

    瀏覽量

    15454
收藏 人收藏

    評論

    相關推薦

    運動控制卡網絡通訊的心跳檢測之C#上位編程

    使用C#上位編程實現運動控制卡網絡通訊的心跳檢測功能
    的頭像 發表于 12-24 10:54 ?48次閱讀
    <b class='flag-5'>運動</b><b class='flag-5'>控制卡</b>網絡通訊的心跳檢測之<b class='flag-5'>C#</b><b class='flag-5'>上位</b><b class='flag-5'>機</b>編程

    PCIe實時運動控制卡的雙盤視覺篩選機上位開發應用

    PCIe實時運動控制卡的雙盤視覺篩選機上位開發應用
    的頭像 發表于 10-10 10:15 ?309次閱讀
    PCIe<b class='flag-5'>實時運動</b><b class='flag-5'>控制卡</b>的雙盤視覺篩選機<b class='flag-5'>上位</b><b class='flag-5'>機</b><b class='flag-5'>開發</b>應用

    EtherCAT超高速實時運動控制卡XPCIE1032H上位C#開發(十四)

    XPCIE1032H是一款基于PCI Express的EtherCAT總線運動控制卡,可選6-64軸運動
    的頭像 發表于 03-04 10:46 ?4.1w次閱讀
    <b class='flag-5'>EtherCAT</b><b class='flag-5'>超高速</b><b class='flag-5'>實時運動</b><b class='flag-5'>控制卡</b><b class='flag-5'>XPCIE1032H</b><b class='flag-5'>上位</b><b class='flag-5'>機</b><b class='flag-5'>C#</b><b class='flag-5'>開發</b>(十四)

    EtherCAT超高速實時運動控制卡XPCIE1032H上位C#開發十三

    XPCIE1032H是一款基于PCI Express的EtherCAT總線運動控制卡,可選6-64軸運動
    的頭像 發表于 02-25 10:11 ?929次閱讀
    <b class='flag-5'>EtherCAT</b><b class='flag-5'>超高速</b><b class='flag-5'>實時運動</b><b class='flag-5'>控制卡</b><b class='flag-5'>XPCIE1032H</b><b class='flag-5'>上位</b><b class='flag-5'>機</b><b class='flag-5'>C#</b><b class='flag-5'>開發</b>(<b class='flag-5'>十三</b>)

    PT/PVT運動模式介紹:EtherCAT超高速實時運動控制卡XPCIE1032H上位C#開發(十一)

    運動PT/PVT運動模式介紹以及實現效果。
    的頭像 發表于 02-01 11:05 ?1414次閱讀
    PT/PVT<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'>控制卡</b><b class='flag-5'>XPCIE1032H</b><b class='flag-5'>上位</b><b class='flag-5'>機</b><b class='flag-5'>C#</b><b class='flag-5'>開發</b>(十一)

    PT/PVT運動模式介紹:EtherCAT超高速實時運動控制卡XPCIE1032H上位C#人工智能

    上位運動控制卡
    正運動技術
    發布于 :2024年01月25日 11:12:46

    【正運動高速高精,超高實時性的PCIe EtherCAT實時運動控制卡 | PCIE464

    軌跡的小線段前瞻,各種機器人與自定義機器人算法的控制,多種PSO控制等,滿足多樣化的工業應用需求。正運動提供自主自研IDE-RTSys開發
    發表于 01-24 09:48

    項目工程下載與XML配置文件下載:EtherCAT超高速實時運動控制卡XPCIE1032H上位C#開發

    運動控制上位
    正運動技術
    發布于 :2024年01月22日 09:20:13

    EtherCAT超高速實時運動控制卡XPCIE1032H上位C#開發

    XPCIE1032H集成了強大的運動控制功能,結合MotionRT7運動控制實時軟核,解決了
    發表于 01-15 11:20 ?606次閱讀
    <b class='flag-5'>EtherCAT</b><b class='flag-5'>超高速</b><b class='flag-5'>實時運動</b><b class='flag-5'>控制卡</b><b class='flag-5'>XPCIE1032H</b><b class='flag-5'>上位</b><b class='flag-5'>機</b><b class='flag-5'>C#</b><b class='flag-5'>開發</b>

    EtherCAT超高速實時運動控制卡XPCIE1032H上位C#開發(九)

    XPCIE1032H是一款基于PCI Express的EtherCAT總線運動控制卡,可選6-64軸運動
    的頭像 發表于 01-13 09:11 ?1281次閱讀
    <b class='flag-5'>EtherCAT</b><b class='flag-5'>超高速</b><b class='flag-5'>實時運動</b><b class='flag-5'>控制卡</b><b class='flag-5'>XPCIE1032H</b><b class='flag-5'>上位</b><b class='flag-5'>機</b><b class='flag-5'>C#</b><b class='flag-5'>開發</b>(九)

    EtherCAT驅動器回零與控制器回零:EtherCAT超高速實時運動控制卡XPCIE1032H上位開發

    驅動器上位
    正運動技術
    發布于 :2024年01月12日 09:19:28

    運動技術單軸PSO視覺飛拍與精準輸出:EtherCAT超高速實時運動控制卡XPCIE1032H上位開發

    上位運動技術
    正運動技術
    發布于 :2024年01月04日 09:55:43

    單軸PSO視覺飛拍與精準輸出:EtherCAT超高速實時運動控制卡XPCIE1032H上位C#開發(七)

    運動技術EtherCAT控制卡在VS平臺采用C#語言實現的各種PSO功能。
    的頭像 發表于 01-03 09:50 ?1041次閱讀
    單軸PSO視覺飛拍與精準輸出:<b class='flag-5'>EtherCAT</b><b class='flag-5'>超高速</b><b class='flag-5'>實時運動</b><b class='flag-5'>控制卡</b><b class='flag-5'>XPCIE1032H</b><b class='flag-5'>上位</b><b class='flag-5'>機</b><b class='flag-5'>C#</b><b class='flag-5'>開發</b>(七)
    主站蜘蛛池模板: 亚洲 综合 自拍 精品 在线| 伦理片飘花免费影院| 亲胸吻胸添奶头GIF动态图免费| 99热久久爱五月天婷婷| 中国老女人xxhd69| 青青草国产精品久久| 国拍在线精品视频免费观看| 第一次破女初国产美女| fryee性欧美18 19| 99九九99九九九视频精品| 一区二区不卡在线视频| 亚洲天码中字| 久久全国免费观看视频| 国产午夜视频在线| 国语92电影网午夜福利| 狠狠色色综合站| 国产不卡无码高清视频| 朝鲜女人性猛交| 97超碰97资源在线观看视频| 午夜免费体验30分| 亚洲国产精品线在线观看| 亚洲AV无码乱码在线观看浪潮| 亚洲国产日韩欧美在线a乱码| 亚洲国产欧美在线看片| 一本色道久久88综合日韩精品| 善良的小峓子2在钱中文版女主角| 美女厕所撒尿ass| 好大的太粗好深BL| 久草在线精彩免费视频| 两个奶头被吃得又翘又痛| 欧美在线亚洲综合国产人| 老师你狠狂| 起碰免费公开97在线视频| 视频在线观看高清免费看| 亚洲精品视频观看| 亚洲成a人不卡在线观看| 一本色道久久综合亚洲AV蜜桃| 99re5久久热在线| 91夫妻交友论坛| 大陆极品少妇内射AAAAAA| 国内精品久久久久久久999下|