天天爽天天看-日本少妇xxxx动漫-亚洲av成人精品毛片-欧美一区二区三区激情啪啪-91精品国产成-欧美牲交a欧美牲交aⅴ-欧美日韩国产免费观看-九九99精品久久久久久综合-欧美理论影院-国内老熟妇乱子伦视频-www在线观看av-黄色裸体网站-少妇高潮惨叫久久久久久-国产偷国产偷av亚洲清高-国产午夜精品理论片小yo奈-高大丰满熟妇丰满的大白屁股

閱讀 | 訂閱
閱讀 | 訂閱
控制系統(tǒng)

VC++開(kāi)發(fā)PC與松下PLC間的通訊程序

星之球激光 來(lái)源:中國(guó)自動(dòng)化網(wǎng)2012-08-28 我要評(píng)論(0 )   

1 引言 可編程控制器是一種數(shù)字運(yùn)算操作的電子系統(tǒng),專為在工業(yè)環(huán)境下應(yīng)用而設(shè)計(jì)。它采用了可編程序的存儲(chǔ)器,用于其內(nèi)部存儲(chǔ)程序,執(zhí)行邏輯運(yùn)算、順序控制、定時(shí)、計(jì)數(shù)...

1 引言

  可編程控制器是一種數(shù)字運(yùn)算操作的電子系統(tǒng),專為在工業(yè)環(huán)境下應(yīng)用而設(shè)計(jì)。它采用了可編程序的存儲(chǔ)器,用于其內(nèi)部存儲(chǔ)程序,執(zhí)行邏輯運(yùn)算、順序控制、定時(shí)、計(jì)數(shù)和算術(shù)操作等面向用戶的指令,并通過(guò)數(shù)字式或模擬式輸入輸出控制各種類型的機(jī)械的生產(chǎn)過(guò)程。可編程控制器及其有關(guān)外部設(shè)備,都按易于與工業(yè)控制系統(tǒng)聯(lián)成一個(gè)整體、易于擴(kuò)充其功能的原則設(shè)計(jì)。早期的plc以數(shù)字量的順序控制為主,提供了簡(jiǎn)單的慢速的通信功能(只支持rs232、rs485、多采用modbus協(xié)議),現(xiàn)在的plc不僅具有邏輯運(yùn)算、順序控制、定時(shí)、計(jì)數(shù)和算術(shù)操作,而且還具有a/d、d/a轉(zhuǎn)換,數(shù)值計(jì)算和數(shù)據(jù)處理等功能。它既可以對(duì)開(kāi)關(guān)量進(jìn)行控制,也可以對(duì)模擬量進(jìn)行控制,隨著plc功能不斷擴(kuò)充,它還有通訊聯(lián)網(wǎng)功能。本文就是基于松下電工的專門通信協(xié)議(mewtocol),用vc++開(kāi)發(fā)的上位機(jī)與plc間的通信。

 

2 松下電工的專用通信協(xié)議mewtocol-com

  目前,隨著plc的快速發(fā)展,越來(lái)越多的plc生產(chǎn)廠商開(kāi)發(fā)了它與計(jì)算機(jī)的通信功能(主要是利用計(jì)算機(jī)串口進(jìn)行通信),本文是以松下fp系列plc為例,作詳細(xì)闡述。在一臺(tái)計(jì)算機(jī)于plc之間的通信中,通信由計(jì)算機(jī)發(fā)動(dòng),把命令幀發(fā)向plc,plc將以響應(yīng)幀作應(yīng)答,并執(zhí)行相應(yīng)的動(dòng)作。

  (1) 命令幀格式

  其中: %:mewtocol-com的命令幀開(kāi)始標(biāo)志(ascii碼為25h)。

  h,l:站地址的高位和低位。

  #:站號(hào)特征碼(ascii碼為23h)。

  發(fā)送文本:由命令碼和數(shù)據(jù)組成,其主要命令碼如表1所示。

  bcc:校驗(yàn)碼,采用異或校驗(yàn)碼,bcc為8位。

  (2) 響應(yīng)幀格式

  當(dāng)主站發(fā)來(lái)命令幀之后,從站將以響應(yīng)幀作應(yīng)答。響應(yīng)幀分為2種,若主站命令幀正確無(wú)誤,則用“正確響應(yīng)幀”作應(yīng)答;如果主站命令幀有錯(cuò)誤則用“錯(cuò)誤響應(yīng)幀”作應(yīng)答。這兩種應(yīng)幀格式下。正確響應(yīng)幀的格式

  其中 %,h,l,bcc,cr含義與命令幀相同。

  $:正確響應(yīng)的標(biāo)志(acsii碼為24h)。

  響應(yīng)文本:應(yīng)當(dāng)按照命令幀要求及協(xié)議規(guī)定組織。

  錯(cuò)誤響應(yīng)幀的格式

  其中%,h,l,bcc,cr含義與命令幀相同。

  !:錯(cuò)誤響應(yīng)幀的標(biāo)志(acsii碼為21h)。

  錯(cuò)誤代碼:對(duì)于命令及數(shù)據(jù)傳送中的各種錯(cuò)誤均規(guī)定為代碼以識(shí)別。

        (3) 命令碼: mewtocol-com協(xié)議的命令碼匯總?cè)绫?所示

  (4)常用的命令與格式

  a)單接點(diǎn)的讀

  錯(cuò)誤響應(yīng)幀與單接點(diǎn)的相同。

 

3 用visual c++6.0編寫串行通信程序

  (1) mscomm控件

  串行通訊編程基本過(guò)程:設(shè)置初始化并打開(kāi)串行口—配置串口—雙向傳輸數(shù)據(jù)—校驗(yàn)—釋放串口。本文的上位機(jī)通信程序是用visualc++6.0編寫的,主要是利用vc++中的一個(gè)通信控件mscomm來(lái)現(xiàn)的。

  該控件屏蔽了通訊過(guò)程中的底層操作,程序員應(yīng)用時(shí)只需設(shè)置,監(jiān)控mscomm控件的屬性和事件即可完成對(duì)串口的初始化和數(shù)據(jù)的輸入輸出工作。mscomm控件的主要屬性如下:

  * commport:設(shè)置并返回通訊端口號(hào),設(shè)計(jì)時(shí)端口號(hào)可設(shè)為1到16的任何數(shù)(默認(rèn)值為1)。如:setcommport(1);即設(shè)置當(dāng)前通訊端口為com1。

  * settings:設(shè)置并返回波特率,奇偶校驗(yàn),數(shù)據(jù)位長(zhǎng)度,停止位長(zhǎng)度。

  如:setsettings(lpctstr string);string是一個(gè)包括四部分的字符串:第一部分:波特率;

  第二部分:奇偶校驗(yàn),n表示不校驗(yàn),e表示偶校驗(yàn),o表示奇校驗(yàn),s表示空格校驗(yàn),m表示符號(hào)校驗(yàn);

  第三部分:數(shù)據(jù)為長(zhǎng)度,其可選值為4,5,6,7,8;

  第四部分:停止位長(zhǎng)度,其可選為1,1.5,2。 settings屬性的缺省值為“9600,n,8,1”。

  * portopen:用于打開(kāi)和關(guān)閉端口。setportopen(bool bnewvalue);

  當(dāng)bnewvalue為true時(shí)打開(kāi)端口,當(dāng)為false時(shí)關(guān)閉端口。

  * input:從接受緩沖區(qū)返回和刪除字符,該屬性在運(yùn)行時(shí)為只讀。getinput();

  * output:向緩沖區(qū)寫數(shù)據(jù),要傳送的數(shù)據(jù)可以是文本數(shù)據(jù)或是二進(jìn)制數(shù)據(jù)。

  *commevent:返回最近的通訊事件或錯(cuò)誤。只要有通訊錯(cuò)誤或事件發(fā)生時(shí)都會(huì)產(chǎn)生oncomm事件,commevent屬性中存有錯(cuò)誤或事件的數(shù)值代碼。

  getcommevent();

      

4 程序框架的生成及控件屬性的配置

  首先利用mfcappwizard(exe)建立一個(gè)基于對(duì)話框,支持activex控件,命名為transcomn的應(yīng)用程序。然后在對(duì)話框中加入一些控件,其中那個(gè)mscomm控件(電話形狀的控件)必須是在系統(tǒng)中注冊(cè)過(guò)的microsoft communications control,由它進(jìn)行通訊時(shí)首先得設(shè)置它的一些屬性,這些屬性既可以在控件屬性對(duì)話框中設(shè)置也可以在程序中設(shè)置,本文用后一種方法,在程序中對(duì)mscomm控件屬性設(shè)置。最后用classwizard為控件添加變量和響應(yīng)函數(shù)如表2

5 程序編寫

  // transcommdlg.cpp : implementation file

  bool ctranscommdlg::oninitdialog()

  {

  //初始化通訊端口,波特率為9600,奇校驗(yàn),8位數(shù)據(jù)位,1位校驗(yàn)位,選擇com1口

  cdialog::oninitdialog();

  m_comm.setcommport(1);

  m_comm.setsettings(“9600,o,8,1”);

  m_comm.setinputmode(1);

  m_comm.setportopen(true);

  return true; // return true unless you set the focus to a

  control

  }

  void ctranscommdlg::onsend()

  {

  updatedata(true);

  variant vresponse;

  char *str;

  //把對(duì)話框中有用戶輸入的命令字符串cstring

  //m_commandstring,由串口發(fā)出

  m_comm.setoutput(colevariant(m_commandstring));

  sleep(50);//延時(shí)50毫秒,一個(gè)保證有足夠的時(shí)間 //讓plc響應(yīng)命令

  //讀取串口輸入緩沖區(qū)中的字符個(gè)數(shù),如大于0表 //示串口接受到plc的響應(yīng)幀,然后//進(jìn)行處理

  int k=m_comm.getinbuffercount();

  if(k》0)

  {

  //把plc發(fā)送來(lái)的響應(yīng)幀轉(zhuǎn)換為字符 //串,并在對(duì)話框的響應(yīng)文本框中顯示

  vresponse=m_comm.getinput();

  str=(char *)(unsigned char*)vresponse.parray-》pvdata;

  str[k]='';

       }

       }

 

轉(zhuǎn)載請(qǐng)注明出處。

暫無(wú)關(guān)鍵詞
免責(zé)聲明

① 凡本網(wǎng)未注明其他出處的作品,版權(quán)均屬于激光制造網(wǎng),未經(jīng)本網(wǎng)授權(quán)不得轉(zhuǎn)載、摘編或利用其它方式使用。獲本網(wǎng)授權(quán)使用作品的,應(yīng)在授權(quán)范圍內(nèi)使 用,并注明"來(lái)源:激光制造網(wǎng)”。違反上述聲明者,本網(wǎng)將追究其相關(guān)責(zé)任。
② 凡本網(wǎng)注明其他來(lái)源的作品及圖片,均轉(zhuǎn)載自其它媒體,轉(zhuǎn)載目的在于傳遞更多信息,并不代表本媒贊同其觀點(diǎn)和對(duì)其真實(shí)性負(fù)責(zé),版權(quán)歸原作者所有,如有侵權(quán)請(qǐng)聯(lián)系我們刪除。
③ 任何單位或個(gè)人認(rèn)為本網(wǎng)內(nèi)容可能涉嫌侵犯其合法權(quán)益,請(qǐng)及時(shí)向本網(wǎng)提出書(shū)面權(quán)利通知,并提供身份證明、權(quán)屬證明、具體鏈接(URL)及詳細(xì)侵權(quán)情況證明。本網(wǎng)在收到上述法律文件后,將會(huì)依法盡快移除相關(guān)涉嫌侵權(quán)的內(nèi)容。

網(wǎng)友點(diǎn)評(píng)
0相關(guān)評(píng)論
精彩導(dǎo)讀
天天爽天天看-日本少妇xxxx动漫-亚洲av成人精品毛片-欧美一区二区三区激情啪啪-91精品国产成-欧美牲交a欧美牲交aⅴ-欧美日韩国产免费观看-九九99精品久久久久久综合-欧美理论影院-国内老熟妇乱子伦视频-www在线观看av-黄色裸体网站-少妇高潮惨叫久久久久久-国产偷国产偷av亚洲清高-国产午夜精品理论片小yo奈-高大丰满熟妇丰满的大白屁股
  • <abbr id="a4qk0"><tfoot id="a4qk0"></tfoot></abbr>
    <fieldset id="a4qk0"></fieldset>
    8x8x华人在线| 青青青在线播放| 在线观看免费黄网站| 久久av综合网| 精品国产av无码一区二区三区| 三级黄色片免费看| 欧美大片免费播放| 欧美一级片免费播放| 国产一区二区三区在线免费| 91视频 - 88av| www.日本少妇| 91香蕉视频污版| 色噜噜狠狠一区二区三区狼国成人| 91精品999| 日韩精品一区二区在线视频| 欧美国产综合在线| 亚洲成熟丰满熟妇高潮xxxxx| 黄色国产小视频| 色呦呦网站入口| www.好吊操| 无遮挡又爽又刺激的视频| 亚洲 欧美 另类人妖| 黑人巨大国产9丨视频| 国产91xxx| 婷婷激情综合五月天| 男女日批视频在线观看| 国产精品乱码久久久久| 91 视频免费观看| 国产av麻豆mag剧集| mm131国产精品| 精品无码一区二区三区在线| 九九热99视频| 久色视频在线播放| 精品一区二区成人免费视频| 日本三级免费观看| 艳母动漫在线观看| 亚洲天堂2018av| 免费无码av片在线观看| 99精品视频网站| caopor在线视频| 亚洲人成无码网站久久99热国产| 在线看的黄色网址| 奇米影视亚洲色图| 乱熟女高潮一区二区在线| 日本中文字幕高清| 欧美老熟妇喷水| 无码日本精品xxxxxxxxx| 国产aⅴ爽av久久久久| 国产aaa一级片| 无码人妻丰满熟妇区96| 狠狠噜天天噜日日噜| 男女污污视频网站| 在线观看免费av网址| 欧美丰满熟妇xxxxx| 99在线精品免费视频| 国产精品无码免费专区午夜| 偷拍盗摄高潮叫床对白清晰| 182午夜视频| 亚洲欧美日韩一二三区| 91精品999| 日韩最新中文字幕| 中文字幕在线乱| 在线观看免费黄色片| 大桥未久一区二区| 激情五月六月婷婷| 真人抽搐一进一出视频| 精品少妇在线视频| 久久综合九色综合88i| 熟女少妇在线视频播放| 亚洲熟女乱色一区二区三区| 99精品在线免费视频| 国产成人a亚洲精v品无码| 成人羞羞国产免费网站| 亚洲精品怡红院| 午夜福利123| 国产成人永久免费视频| 国产素人在线观看| 美女一区二区三区视频| 热久久久久久久久| www.国产亚洲| 色诱视频在线观看| 波多野结衣在线免费观看| 97超碰免费观看| 日韩黄色片在线| 免费在线观看毛片网站| av免费一区二区| 妞干网在线观看视频| 乱子伦视频在线看| 超碰中文字幕在线观看| 欧美 国产 综合| 一二三av在线| 国产免费观看高清视频| 一区二区三区视频在线观看免费| 日韩a一级欧美一级| 日韩精品―中文字幕| 久国产精品视频| 99久久久无码国产精品6| 天天综合网久久| 99爱视频在线| 男人天堂成人网| 中文字幕第21页| 日韩av高清在线看片| 三级a在线观看| 欧美二区在线视频| 亚洲区成人777777精品| 韩国中文字幕av| 男人日女人逼逼| 强开小嫩苞一区二区三区网站| 欧美一级黄色片视频| 男女裸体影院高潮| 毛毛毛毛毛毛毛片123| 久久久999视频| 和岳每晚弄的高潮嗷嗷叫视频| 五月婷婷之婷婷| 一区二区三区入口| 久久婷婷国产精品| 欧美s码亚洲码精品m码| 真实国产乱子伦对白视频| 亚洲美女性囗交| 欧美日韩精品区别| 亚洲精品午夜在线观看| 宅男噜噜噜66国产免费观看| 国产精品999视频| 成人免费观看视频在线观看| 91麻豆天美传媒在线| 国产精品无码乱伦| 欧美在线aaa| 天天干天天色天天干| 日韩不卡一二三| 伊人色在线观看| 国产又大又长又粗又黄| 女同性恋一区二区| 日韩 欧美 视频| 你懂的av在线| 精品久久久久久无码国产| 亚洲 中文字幕 日韩 无码| 成人免费毛片播放| 日韩五码在线观看| 偷拍盗摄高潮叫床对白清晰| 4444在线观看| 少妇高潮喷水在线观看| 国产精品99久久免费黑人人妻| 日韩视频免费在线播放| 中文字幕亚洲欧洲| 日韩中文字幕亚洲精品欧美| 99热这里只有精品免费| 久久视频这里有精品| 你真棒插曲来救救我在线观看| 亚洲精品国产suv一区88| 日本一道本久久| 天天干天天操天天做| 久久精品国产精品亚洲精品色| 亚洲啊啊啊啊啊| 欧美黄色免费影院| 好男人www社区| 青青在线视频观看| 男人的天堂成人| 一本色道无码道dvd在线观看| 性欧美1819| 免费无遮挡无码永久视频| 国产精品v日韩精品v在线观看| 欧美三级理论片| 亚洲在线观看网站| www.cao超碰| 亚洲熟妇av一区二区三区漫画| 香港日本韩国三级网站| 91蝌蚪视频在线| 黑森林福利视频导航| av日韩在线看| 免费网站在线观看黄| 成人一级片网站| 激情五月婷婷六月| 国产成人强伦免费视频网站| 国产一区二区视频免费在线观看| 亚洲AV无码成人精品一区| 亚洲免费一级视频| 亚洲精品无码久久久久久| 男人草女人视频| 免费成人进口网站| www.com久久久| av中文字幕网址| 免费看污污网站| 成人3d动漫一区二区三区| 一本大道熟女人妻中文字幕在线 | 国产内射老熟女aaaa| 69久久久久久| 成人亚洲视频在线观看| 北条麻妃在线视频观看| 国产日韩亚洲欧美在线| 水蜜桃在线免费观看| 热久久久久久久久| 日韩视频在线观看一区二区三区| 黄色免费观看视频网站| 久久精品国产精品亚洲色婷婷| 你真棒插曲来救救我在线观看| 国产精品h视频| 久久久久福利视频| 国产欧美精品aaaaaa片| 久久久性生活视频| 国模吧无码一区二区三区|