PMAC上位機程式設計

2021-07-10 21:09:56 字數 1888 閱讀 4337

1、背景

pmac

是一系列控制卡的簡稱,常用的有

pmac1

、pmac2

、turbo pmac1

、turbo pmac2

、umac

、clipper

等,基本功能和使用方法是一樣的。在複雜條件下將預定的控制方案、規劃指令轉變成期望的機械運動,實現機械運動精確的位置控制、速度控制、加速度(轉矩

)的控制。pmac

是一系列控制卡的簡稱,常用的有

pmac1

、pmac2

、turbo pmac1

、turbo pmac2

、umac

、clipper

等,基本功能和使用方法是一樣的。在複雜條件下將預定的控制方案、規劃指令轉變成期望的機械運動,實現機械運動精確的位置控制、速度控制、加速度(轉矩

)的控制。

2、上位機應用

1)vc

程式設計的環境配置

pmacpc

程式設計必須安裝

pcomm32驅動程式,開啟

vctest

目錄,會發現有

myruntime.h

和myruntime.cpp

檔案,連同上面的

pcomm32.dll

一同拷貝進當前專案目錄。然後將

myruntime.h

和myruntime.cpp

新增到當前專案中,就可以開始使用了。

2)pmac卡初始化連線

bool bpmac = false;

cstring strre = "";

if (!openpmacdevice(0)) //pmac卡初始化連線

else

3)資料收發

dword m_dcard;//電機所屬卡號

char m_response[255];//反饋

uint m_maxchar;//傳送的指令的最大長度

char m_command[255];//命令

lstrcpy(szcmd, 

"#6j+"

); //命令填充

pmacgetresponsea(m_dcard, m_response, m_maxchar, m_command);// 資料收發

4)中斷通訊(下位機通知上位機)

中斷處理函式:

void winapi interruptfunc(dword msg, pintrbuffer pbuffer)

int temp613,pvarible;

temp613 = g_pctrlcenter->getctrlcard()->getparam(m613)->getparamvalue();

//main process

if ( temp613 == 1)

if ( g_pctrlcenter->getctrlcard()->getparam(p81)->getparamvalue() == 1 )

if ( g_pctrlcenter->getctrlcard()->getparam(p81)->getparamvalue() == 1 )

g_pctrlcenter->getctrlcard()->getparam(m613)->setparamvalue(0);

} //post-process

return;

}

註冊中斷處理函式:

//中斷函式繫結  

if( false == pmacintrfunccallinit(pmac_num, interruptfunc, 0, 0xff1f))

PMAC上位機程式設計基礎1 程式設計環境配置

最近看了一篇上海交通大學的碩士畢業 提到了關於pmac的上位機程式設計,覺得蠻有意思。於是也想寫乙個小介面試一試。看了兩三天文件,經過n次除錯,終於完成了實現電機jog運動的介面,其實回過頭來想想,還是蠻簡單的。一般,運動控制卡都配有開放的函式庫供使用者在dos或windows系統平台下自行開發 構...

上位機 下位機

上位機是指 人可以直接發出操控命令的計算機,一般是pc,螢幕上顯示各種訊號變化 液壓,水位,溫度等 下位機是直接控制裝置獲取裝置狀況的的計算機,一般是plc 微控制器之類的。上位機發出的命令首先給下位機,下位機再根據此命令解釋成相應時序訊號直接控制相應裝置。下位機不時讀取裝置狀態資料 一般模擬量 轉...

上位機與下位機

上位機一般是集中管理監控機,下位機是指現場直接控制器或控制機。上位機面向管理級使用者,下位機面向底層裝置控制。上位機 上位監視系統,一般為計算機系統 監控軟體 下位機 控制系統的現場執行系統,一般為plc等裝置。上位機是指人可以直接發出操控命令的計算機,一般是pc,螢幕上顯示各種訊號變化 液壓,水位...