中文字幕第二一区_久久久久在线视频_精品国产自在现线看久久_亚洲精品一区二区三区电影网

產品分類

當前位置: 首頁 > 傳感測量產品 > 數據采集產品 > 運動控制卡

類型分類:
科普知識
數據分類:
運動控制卡

EtherCAT運動控制卡的電子凸輪追剪飛剪等應用(一)

發布日期:2022-10-09 點擊率:99

  • 關鍵詞:正運動技術,EtherCAT,運動控制卡


  • 摘要:今天,正運動小助手給大家分享一下EtherCAT運動控制卡之ECI2828如何使用C#進行電子凸輪追剪飛剪等應用。


今天,正運動小助手給大家分享一下EtherCAT運動控制卡之ECI2828如何使用C#進行電子凸輪追剪飛剪等應用。


一ECI2828硬件介紹


ECI2828系列運動控制卡支持多達16 軸直線插補、任意圓弧插補、空間圓弧、螺旋插補、電子凸輪、電子齒輪、同步跟隨、虛擬軸和機械手指令等;采用優化的網絡通訊協議可以實現實時的運動控制。


ECI2828系列運動運動控制卡支持以太網,232 通訊接口和電腦相連,接收電腦的指令運行,可以通過EtherCAT總線和CAN總線去連接各個擴展模塊,從而擴展輸入輸出點數或運動軸。


image.png


ECI2828系列運動控制卡的應用程序可以使用 VC、VB、VS、C++以及C#等軟件來開發,程序運行時需要動態庫 zmotion.dll。調試時可以把ZDevelop軟件同時連接到控制器,從而方便調試,方便觀察。


image.png


二C#語言進行運動控制開發


Ⅰ查看PC函數手冊新建WinForm


1.在VS2015菜單“文件”→“新建”→ “項目”,啟動創建項目向導。


image.png


2.選擇開發語言為“Visual C#”和.NET framework 4以及Windows 窗體應用程序。


image.png


3.找到廠家提供的光盤資料里面的C#函數庫,路徑如下(64位庫為例):

A.進入廠商提供的光盤資料找到“8.PC函數”文件夾,并點擊進入。


image.png


B.選擇“函數庫2.1”文件夾。


C.選擇“Windows平臺”文件夾。


D.根據需要選擇對應的函數庫這里選擇64位庫。


E.解壓C#的壓縮包,里面有C#對應的函數庫。


F.函數庫具體路徑如下。


image.png


4.將廠商提供的C#的庫文件以及相關文件復制到新建的項目中。


A.將zmcaux.cs文件復制到新建的項目里面中。

image.png


B.將zaux.dll和zmotion.dll文件放入bindebug文件夾中。

image.png


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


image.png


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


image.png


至此項目新建完成,可進行C#項目開發。


查看PC函數手冊


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

image.png


2.PC編程,一般如果網口對控制器和工控機進行鏈接。網口鏈接函數接口是ZAux_OpenEth();如果鏈接成功,該接口會返回一個鏈接句柄。通過操作這個鏈接句柄可以實現對控制器的控制。


ZAux_OpenEth()接口說明:


image.png


項目應用截圖:


image.png


3.使用凸輪的指令操作鏈接句柄“g_handle”,對控制器進行電子凸輪運動控制,連續插補運動相關的指令如下。

ZAux_Direct_Cambox電子凸輪指令:


image.png


C#的電子凸輪追剪等運動開發


1.電子凸輪追剪飛剪運動控制人機交互界面如下。

image.png


2.電子凸輪功能說明。

凸輪的作用是將旋轉運動轉換為線性運動,包括直線運動、擺動、勻速運動和非勻速運動。


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


●工作原理:


電子凸輪屬于多軸同步運動,這種運動是基于主軸外加一個或多個從軸系統,是在機械凸輪的基礎上發展而來,電子凸輪多用于周期性的曲線運動場合。


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


3.例程簡易流程圖。

image.png


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

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("控制器鏈接失敗,請檢測IP地址!", "警告");

        //設置鏈接狀態按鈕

        status.BackColor = System.Drawing.Color.Red;

        status.Text = "已斷開";

    }

}

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

//定時器

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 = "已斷開";

    }

}

6.利用提前加載好的凸輪表數據,利用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);

}

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

 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[] { " " }, 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;

     }

 }

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

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;

}


調試與監控


1.編譯運行例程,同時連接ZDevelop軟件進行調試,對運動控制的軸參數和運動情況進行監控。


使用電子凸輪指令進行運動,設置軸運動動作按照凸輪表中的數據進行對應運動,所有運動數據相對于第一個數據點的位置進行絕對位置偏移。


image.png


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


image.png


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


本次,正運動技術EtherCAT運動控制卡的電子凸輪等應用,就分享到這里。

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


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


下一篇: PLC、DCS、FCS三大控

上一篇: VPLC系列機器視覺運動

推薦產品

更多
中文字幕第二一区_久久久久在线视频_精品国产自在现线看久久_亚洲精品一区二区三区电影网

      久久亚裔精品欧美| 欧美一区国产二区| 国产精品久久久久7777婷婷| 亚洲一区在线看| 国产乱码精品一区二区三区忘忧草| 午夜在线观看免费一区| 狠狠噜噜久久| 欧美日韩一区二区免费在线观看| 亚洲影视在线播放| 在线播放亚洲| 欧美午夜电影在线观看| 久久久国产精品亚洲一区 | 国产视频欧美| 欧美凹凸一区二区三区视频| 亚洲一二三区在线| 怡红院av一区二区三区| 欧美日韩综合不卡| 久久av一区二区三区| 亚洲精选中文字幕| 国产欧美一区视频| 欧美另类一区| 久久精品日韩欧美| 亚洲午夜电影| 在线精品福利| 国产欧美日韩精品a在线观看| 欧美成人中文字幕在线| 欧美一区二区三区免费视频| 亚洲精品一级| 好吊色欧美一区二区三区四区 | 先锋a资源在线看亚洲| 亚洲人体1000| 黄色国产精品| 国产精品永久免费视频| 欧美激情影音先锋| 久久久蜜臀国产一区二区| 亚洲天堂网站在线观看视频| 亚洲欧洲视频| 在线观看亚洲专区| 国产综合色产| 国产欧美精品| 国产精品劲爆视频| 欧美日韩一区二区在线视频| 蜜桃久久精品乱码一区二区| 久久都是精品| 香蕉国产精品偷在线观看不卡 | 久久乐国产精品| 午夜精品久久久久久久久| 中日韩在线视频| 日韩午夜精品| 99re6热在线精品视频播放速度| 激情久久久久| 韩国欧美国产1区| 国产一区二区三区av电影| 国产精品亚洲欧美| 国产精品极品美女粉嫩高清在线| 欧美—级高清免费播放| 欧美成人免费一级人片100| 老司机精品视频网站| 久久免费视频这里只有精品| 久久精品99无色码中文字幕| 久久成人综合视频| 久久久久久久精| 久久久水蜜桃| 免费欧美日韩| 欧美福利小视频| 欧美激情免费在线| 欧美日韩成人精品| 欧美视频一区二区三区在线观看| 欧美日韩一区二区三区在线| 欧美视频一区二区三区在线观看| 欧美午夜视频在线观看| 国产精品高精视频免费| 国产精品视频区| 国产亚洲欧美一区二区三区| 国内精品亚洲| 亚洲国产精品成人久久综合一区| 亚洲国产天堂网精品网站| 亚洲区第一页| 亚洲尤物视频在线| 久久精品国产一区二区三区| 久久天天躁夜夜躁狠狠躁2022| 免费不卡在线视频| 欧美日韩视频一区二区三区| 国产精品成人一区二区网站软件| 国产乱码精品一区二区三区av| 国产主播一区二区三区| 在线成人av| 夜夜嗨av一区二区三区免费区| 亚洲一区二区在线播放| 欧美在线一二三四区| 免费欧美在线| 国产精品女人毛片| 樱花yy私人影院亚洲| 日韩视频在线观看一区二区| 在线亚洲一区观看| 久久大逼视频| 欧美日本国产精品| 国产精品亚洲а∨天堂免在线| 精品福利免费观看| 一区二区三区四区国产精品| 欧美一区二区三区四区在线| 欧美成人精品激情在线观看| 国产精品卡一卡二| 亚洲国产精品福利| 亚洲综合欧美| 欧美激情1区| 国产在线一区二区三区四区| 亚洲精品在线免费| 久久精品人人做人人爽电影蜜月| 欧美激情第3页| 国产午夜亚洲精品羞羞网站| 亚洲九九爱视频| 久久久久久久久岛国免费| 欧美日韩理论| 激情av一区| 亚洲欧美激情一区二区| 欧美暴力喷水在线| 国产香蕉97碰碰久久人人| 日韩亚洲欧美中文三级| 久久―日本道色综合久久| 国产精品v日韩精品v欧美精品网站| 一区精品久久| 欧美怡红院视频一区二区三区| 欧美激情第1页| 在线播放亚洲一区| 久久成人国产| 国产精品推荐精品| 夜夜嗨av一区二区三区网站四季av| 久久久久久久久综合| 国产精品女人久久久久久| 99riav国产精品| 欧美激情第1页| 在线播放亚洲一区| 久久久久久久999精品视频| 国产精品日日摸夜夜添夜夜av| 日韩亚洲在线观看| 欧美刺激午夜性久久久久久久| 国内精品久久久久久影视8| 亚洲一区三区电影在线观看| 欧美日韩精品一区| 最新中文字幕一区二区三区| 久久久久久久尹人综合网亚洲| 国产日韩精品久久久| 亚洲欧美日本在线| 国产精品sm| 一级日韩一区在线观看| 欧美激情综合色| 亚洲欧洲久久| 欧美成人在线网站| 尤物yw午夜国产精品视频| 久久久99精品免费观看不卡| 国产亚洲第一区| 久久精品视频一| 国产欧美一区二区三区沐欲| 亚洲女人天堂成人av在线| 国产精品毛片va一区二区三区| 亚洲视频axxx| 国产精品中文字幕欧美| 午夜精品www| 国产一区91| 老司机久久99久久精品播放免费| 在线免费一区三区| 欧美福利专区| 一区二区三区欧美在线观看| 国产精品久久久久久久久久三级 | 欧美日本韩国一区| 一本色道久久加勒比精品| 欧美日韩中文在线| 亚洲欧美视频在线| 国产主播一区| 欧美高清一区| 亚洲无吗在线| 国产自产精品| 欧美二区不卡| 亚洲性感激情| 黄色资源网久久资源365| 欧美大片免费观看| 亚洲一区二区三区中文字幕| 国产视频一区在线观看一区免费 | 亚洲欧美日韩国产一区| 国产亚洲欧洲997久久综合| 模特精品裸拍一区| 亚洲婷婷综合色高清在线| 国产色综合天天综合网| 蘑菇福利视频一区播放| 亚洲色图制服丝袜| 国产一区二区精品久久| 欧美岛国在线观看| 亚洲欧美激情视频| 亚洲国产日韩一级| 国产精品久久999| 久久婷婷人人澡人人喊人人爽| 日韩天天综合| 国产午夜亚洲精品不卡| 欧美日本国产一区| 久久久www免费人成黑人精品 | 欧美黄色免费网站| 欧美一区日韩一区| 日韩一级在线| 国产亚洲欧美日韩在线一区|