可編程控制器PLC的應用絕大部分都是通過編寫梯形圖的方式實現程序控制的,但對于智能低壓開關系統來講,其分、斷的控制往往要求由主控操作室遠程控制來完成。按傳統的方法,主控室要對某一個開關柜進行操作,須先發一個控制命令,PLC接收到該控制命令后,再由PLC程序執行該命令,該段程序必須用梯形圖或邏輯指令編程,當開關柜數目巨大或要求多路設備同時控制時,PLC的程">

欧美成人aaaaa免费视频_亚洲欧美激情小说另类_欧美激情一区二区三区视频_一级在线|欧洲

技術頻道

串行通訊的PLC遠程控制

可編程控制器PLC的應用絕大部分都是通過編寫梯形圖的方式實現程序控制的,但對于智能低壓開關系統來講,其分、斷的控制往往要求由主控操作室遠程控制來完成。按傳統的方法,主控室要對某一個開關柜進行操作,須先發一個控制命令,PLC接收到該控制命令后,再由PLC程序執行該命令,該段程序必須用梯形圖或邏輯指令編程,當開關柜數目巨大或要求多路設備同時控制時,PLC的程序編寫就比較復雜,尤其是采用脈沖型輸出控制而不是用電平保持型控制時更是如此。因為開關柜的分、合控制須兩路繼電器輸出分別控制“分閘”和“合閘”,而不是由單路繼電器保持輸出控制,使繼電器輸出與開關柜分合一致。考慮這些因素,本文采用串行通訊實現PLC的控制,PLC本機無須任何梯形圖或邏輯指令,這樣不僅實現簡單而且方便可靠。
一、低壓監控系統設計
(一)系統設計要求
依據用戶的實際要求,智能低壓開關柜不僅能在當地手動進行分、合,而且具有系統零位、時控和遠方控制的功能,其控制回路的電氣控制圖如圖1所示。圖1中SV 為轉換開關,當1、2通時,為當地時控方式;9、10通時為手動方式;5、6通時為遠程控制。當開關柜工作在遠方控制方式時,當PLC輸出觸點#107- #113閉合時,KM線圈加載得電,KM常開觸點閉合,并形成回路使KM線圈始終得電,此時PLC輸出觸點#107-#113釋放,當PLC輸出觸點 #105-115吸合時,KA線圈得電,KA常閉繼電路斷開,使KM線圈回路失電,KM常開觸點斷開,當KM線圈常開觸點斷開后,PLC#1052115 輸出觸點釋放,開關維持斷開狀態。圖中#901-#903作為PLC的輸入觸點。
(二)設計方案簡述
本系統針對低壓系統的實際要求設計,實現開關柜的遠程控制。主站通過電力專用modem與遠方子站RTU進行雙向通訊,主站發出控制命令,子站接收主站控制命令并轉發到PLC,并將PLC的執行結果及時反饋給主站,控制時間在1~2s完成。
監控系統分為三級:主站、變電站當地子站、PLC和儀表設備。主站借助GPS時鐘精確定時,操作員可將任何時候的停電和啟動設置進主站,由主站自動發出控制命令,該監控系統極適合路燈及景觀燈的控制。




圖1 控制回路的電氣控制原理圖


二、通訊協議及處理方法
(一)主站與子站的通訊協議
主站采用電力系統遠動循環規約與子站進行通信,但遠動循環規約中僅有主站對子站的單點遙控命令,為此主站端必須對CDT規約進行擴展,我們借用遙信報文的格式,將主站端需要控制的低壓開關狀態,用遙信報文下發到子站,為此僅需將下發的遙信報文中的開關狀態內容分析出來,分別放置在yk_road[0]、 yk_road[1]、yk_road[2]、yk_road[3]四個字節中,支持對32路低壓斷路器的控制。報文由同步字、控制字和信息字三部分組成,其格式如下:
同步字為6個字節:0dbh,09h,0dbh,09h,0dbh,09h;控制字為6個字節:控制字節、幀類別、幀長度、源站址、目的站址、CRC校驗;信息字為幀長度×6個字節,本文因為控制點數在32個以內,所以信息字僅為6個字節:功能碼、1到8組開關柜控制狀態、9到16組開關柜控制狀態、17到24組開關柜控制狀態、備用開關柜控制狀態、CRC校驗。整個控制報文18個字節,這樣既符合CDT規約的通信格式,又不增加RTU的通信報文分析負擔。
在該規約處理中,關鍵為實時判斷出同步字頭,然后根據幀類別區別遙控選擇命令、遙控執行命令、遙控轍消命令、系統對時和成組開關控制命令,分析出遙控數據存放在yk_road[0]~yk_road[3]中,并置相應標志,再由遠動測量裝置將命令進行分析轉換發給
PLC。實現該規約的分析方法voidinterruptCntReach1()函數如下:
voidinterruptCntReach1()/*串口1每收到一個字節中 斷一次的中斷處理程序*/
{ cntreach[1]++; /*每接收一個字節,中斷 接收計數器加1*/
stat=sio_read(p[1],data,1);/*從串口1緩沖區讀入一 個字節數據放到data[0]中*/
if(ok[1]==0){/*如未判斷到同步字節,以下分析同步 字頭*/
switch(tp[1]){
case0:if(data[0]==0xd7)tp[1]++; break;
case1:if(data[0]==0x09)tp[1]++;
else tp[1]=0; break;
case2:if(data[0]==0xd7)tp[1]++;
else tp[1]=0; break;
case3:if(data[0]==0x09)tp[1]++;
else tp[1]=0; break;
case4:if(data[0]==0xd7)tp[1]++;
else tp[1]=0; break;
case5:if(data[0]==0x09)
{ ok[1]=1;cntreach[1]=0; }
else tp[1]=0; break;
default:break; } }
if((ok[1]==1)&&(cntreach[1]、=0))/*已判斷到同步字頭后,以下分析報文內容*/
{Rx_buf[1][cntreach[1]-1]=data[0];
if(cntreach[1]==3)LGn[1]=Rx_buf[1][2];
if(cntreach[1]>=(LGn[1]*6+6))
{step_flag[1]=1;/*置報文同步標志*/
CODE[1]=Rx_buf[1][1]; /*幀類別*/
switch(CODE[1]){
case0x61:…/*遙控選擇命令處理*/
case0xc2:…/*遙控執行命令處理*/
case0xb3:…/*遙控轍消命令處理*/
case0x7a:…/*系統對時,*/
case0xf4:if(Rx_buf[1][6]==0xf0)/*分析出遙控數 據,并置相應標志*/
if(Rx_buf[1][2]==1)
{yk_road[0]=Rx_buf[1][7];
yk_road[1]=Rx_buf[1][8];
yk_road[2]=Rx_buf[1][9];
yk_road[3]=Rx_buf[1][10];
yk.road=1;yx1_state[0]=1;} break;
default:break;
}reset_point(1);/*復位各種標志的函數*/
} }sio_flush(p[1],0); }
(二)子站與松下PLC的通信協議
松下PLC通信協議MEWTOCOL2COM為廠家專門設計的協議,采用ASCII碼的方式傳送,用應答方式實現PC機與松下Fp1PLC之間的通信。由子站端RTU發出/命令信息0,FP1PLC響應,其基本格式如圖2。



其命令代碼Commandcode由2~3個ASCII字符組成,共26種,主要有:RCS為讀一個觸點數據;WCS為寫一個觸點數據;RCP為讀多個觸點數據;WCP為寫多個觸點數據;RS為讀定時器和計數器的設定值;WS為寫定時器和計數器的設定值;RCC為將多個觸點數據以字方式讀入;WCC為將多個觸點數據以字方式寫入;因此,通過對這26種命令組合分析,可以完全構成由遠程對PLC進行控制,而PLC本身無需編寫任何梯形圖。通過分析測試,例如對 PLC下發ASCII數據串“%01#RCCX00000001**\xod”,共19個字節,其中X是輸入數據類型,Y是輸出數據類型,數據串末尾是回車符,必須用\xod代替,其中報文可以不計算BCH校驗碼,用**代替,該報文實現了以字方式讀01號PLC中的輸入從0000到0001數據,共32 路輸入數據。PLC收到該報文后,立即回17個字節的數據串,前6個數據為/%01#RC0,后8個數據為2個字的輸入點數據,每個字數據用4個字節,每個字符可表示4位輸入點的狀態,設計了Read_fp1_input()函數實現報文分析轉換方法。
對PLC的輸出控制用WCC命令實現,其基本數據串格式為“%01#WCCY000000030000000000000000**/xod”,該報文實現了以字方式置01號PLC中的輸出點從0000到0003數據,控制數據內容為16個字節,每個字符可表示4位輸出點的狀態,共64路輸出數據。因為每個低壓開關柜需要“開”、“斷”2 路輸出控制,實際此命令只可控制32路開關。為了系統可靠,低壓開關設計為脈沖控制型,為此必須用通信命令
來實現PLC輸出觸點的同時輸出,延時一段后再對PLC進行求反輸出控制。設計Write_fp1_output()函數實現了具體報文轉換成輸出數據下發給PLC的方法。
Read_fp1_input() /*讀FP1PLC輸入數據的 處理函數*/
{unsignedcharfp1_read[19]=/%01#RCCX00000001* *\x0d0;intn;
memcpy(SendBuffer,fp1_read,19);
receive_ok=0; termintrr=0;count=0;
sio_putb(p[6],SendBuffer,19);
while(count<wait_time)
{if(termintrr)
{if(Test_buf[6][3]==0x24)
{Test_buf[6][6]=Asc_to_Hex(Test_buf[6][6]);
Test_buf[6][7]=Asc_to_Hex(Test_buf[6][7]);
Test_buf[6][8]=Asc_to_Hex(Test_buf[6][8]);
Test_buf[6][9]=Asc_to_Hex(Test_buf[6][9]);
Test_buf[6][10]=Asc_to_Hex(Test_buf[6][10]);
Test_buf[6][11]=Asc_to_Hex(Test_buf[6][11]);
Test_buf[6][12]=Asc_to_Hex(Test_buf[6][12]);
Test_buf[6][13]=Asc_to_Hex(Test_buf[6][13]);
yx_road[0]=((Test_buf[6][6]&0x0f)*16+Test_buf [6][7]);
yx_road[1]=((Test_buf[6][8]&0x0f)*16+Test_buf [6][9]);
yx_road[2]=((Test_buf[6][10]&0x0f)*16+Test_ buf[6][11]);
yx_road[3]=((Test_buf[6][12]&0x0f)*16+Tes buf[6][13]);
step_flag[6]=1; count = wait_time+1;
} } }}
Asc_to_Hex(charx)/*ASCII碼轉換成十六進制數 */
{ if(x<=0x39)x=x&0x0f; else x=x-“A”+ return x;}
Hex_to_Asc(charx,inthigh)/*十六進制數的高、 轉換成ASCII碼*/
{if(high==1)x=((x&0xf0)>>4)&0x0f; else x&0x0f;
if(x>9)x=x+-A。-10; elsex=x+0x30;
return(x);}
Write_fp1_output()/*控制FP1PLC輸出,并合成 沖的處理函數*/
{unsignedcharfp1_write[35]=/%01#WCCY0000 00000000000000**\x0d0;
intn;
memcpy(SendBuffer,fp1_write,35);
receive_ok=0; termintrr=0; count=0;
SendBuffer[16]=Hex_to_Asc(~yk_road[0],1);
SendBuffer[17]=Hex_to_Asc(~yk_road[0],0);
SendBuffer[18]=Hex_to_Asc(~yk_road[1],1);
SendBuffer[19]=Hex_to_Asc(~yk_road[1],0);
SendBuffer[20]=Hex_to_Asc(yk_road[2],0);
SendBuffer[21]=Hex_to_Asc(~yk_road[2],0);
SendBuffer[28]=Hex_to_Asc(yk_road[0],1);
SendBuffer[29]=Hex_to_Asc(yk_road[0],0);
SendBuffer[30]=Hex_to_Asc(yk_road[1],1);
SendBuffer[31]=Hex_to_Asc(yk_road[1],0);
sio_putb(p[6],SendBuffer,35);
while(count<wait_time)
{if(termintrr) count=count+1;}
count=0;
while(count<36){if(count>30)
{memcpy(SendBuffer,fp1_write,35);
receive_ok=0; termintrr=0;
sio_putb(p[6],SendBuffer,35);
count=40;
}}sleep(1);
Read_fp1_input();/*讀PLC得觸點狀態數據*/
yx_duiwei();/*遙信數據對位*/
Send_yx();} /*將遙信數據上送*/
(三)控制的實現
我們為系統操作員在主站端設計了兩種控制方式,第1種為手動遙控:在后臺的圖形界面中,點擊進入相應的變電站,再進入路燈和景觀燈所在的控制界面,界面中每一組路燈對應變電站的一個低壓抽屜柜,操作員用鼠標選擇路燈和景觀燈的“開”、“滅”狀態,再將所有的開滅狀態組成字節數據,用CDT報文下發給變電站的 RTU。RTU收到路燈控制命令后,將報文解析和重組,用MEWTOCOL2COM通信協議將控制數據傳送給PLC。PLC將按照系統操作員在后臺的設置執行控制命令,RTU將控制結果及時反饋給主站端,主站端將這一控制過程作為一條記錄存入數據庫,可以事后查詢。第2種控制方式為時控:操作員用鼠標選擇在××年××月××日××時××分或星期幾時的路燈和景觀燈的/開0、/滅0狀態,將這些數據存入數據庫,當設定時間到達時系統自動發出這些數據,系統可以根據RTU的反饋信息確定控制是否成功,并可決定是否重發。
因為對PLC的控制是在子站RTU完成的,為控制的實時性,我們采用C語言編程實現了對PLC的通信控制,確保PLC中無需編寫任何梯形圖邏輯。由于系統主站與子站之間的通信是基于十六進制數據的CDT規約,而 MEWTOCOL2COM通信協議是基于ASCII碼的數據通信,為此設計了兩個函數用于基于ASCII字符數據的發送和接收。其中發送數據函數 Sio_putb(),其使用格式見Read_fp1_input()程序。另一個數據接收中斷處理處理函數為本設計的關鍵,為方便和可靠,本文設計的中斷觸發信號為“串行口收到回車符(十六進制的0dH)”,確保PLC每應答完一幀完整的報文,RTU才進入中斷處理,并在中斷處理程序中完成報文數據的分析,大大提高了快速性和可靠性。這種方法在基于ASCII字符的通信中極為有效。本文RTU有6個串口,串口1為與主站的全雙工通信通道,串口6為與 PLC通信通道,用sio_term_irq(p[6],TermCome,0x0d);函數指明串口6只有收到回車符(0x0d)才響應中斷 voidinterruptTerm2Come(),其他的為變電站內的微機保護監控裝置、發電機、直流電源屏、變壓器通信通道,本文不做贅述。其中斷函數初始化及中斷處理程序參見文獻。
三、結語
利用串行通信實現對PLC的遠程控制,可以方便在主站后臺端改變對底端設備的控制邏輯和運行方式,PLC中無需編寫任何梯形圖程序,這在設備遠程控制中有重要意義。該項目2004年在廈門海滄大橋多個變電站正式投運,達到了設計要求,實現了全橋低壓設備的遠方控制.

文章版權歸西部工控xbgk所有,未經許可不得轉載。

欧美成人aaaaa免费视频_亚洲欧美激情小说另类_欧美激情一区二区三区视频_一级在线|欧洲

      9000px;">

          国产精品一区二区三区四区| 亚洲美女电影在线| 日韩一区二区三区观看| 欧美一区日韩一区| 亚洲美女精品一区| 狠狠久久亚洲欧美| 欧美日韩在线三级| 亚洲欧洲一区二区在线播放| 日韩一区精品字幕| 在线免费观看日韩欧美| 美女免费视频一区二区| 亚洲视频图片小说| 91精品午夜视频| 亚洲伊人伊色伊影伊综合网| 国产大片一区二区| 国产精品久久久久久久久果冻传媒 | 国内偷窥港台综合视频在线播放| 丁香啪啪综合成人亚洲小说 | 粉嫩av一区二区三区在线播放 | 亚洲福利国产精品| 国产精品18久久久久| 国产午夜精品理论片a级大结局| 欧美日韩中文国产| 久久疯狂做爰流白浆xx| 国产精品私人影院| 欧美丝袜第三区| 国产一区三区三区| 亚洲精品第1页| 美女任你摸久久| 欧美国产日本韩| 欧美日韩亚洲综合在线| 国产精品亚洲成人| 五月开心婷婷久久| 国产精品乱人伦中文| 亚洲一区二区三区四区在线| 欧美一区二区三区在线观看视频| 国产成人一级电影| 人禽交欧美网站| 国产精品久久久久久亚洲伦| 欧洲国内综合视频| 日本一区二区电影| 欧美一级专区免费大片| 欧美亚洲精品一区| 99热国产精品| 成人毛片在线观看| 国产成人免费xxxxxxxx| 日韩欧美不卡一区| 日韩欧美在线网站| 欧美一级日韩免费不卡| 欧美一区二区三区四区在线观看| 欧美午夜电影在线播放| 欧美精品一卡两卡| 精品国产免费视频| 国产一区二区三区美女| 国产一区二区0| 成人av在线影院| 在线亚洲高清视频| 欧美日韩一级黄| 日韩视频免费直播| 欧美三区在线视频| 欧美亚洲图片小说| 亚洲一区二区欧美激情| 一区二区三区欧美在线观看| 国产精品网站在线播放| 亚洲欧洲精品天堂一级| 国产精品嫩草99a| 亚洲精品乱码久久久久久黑人| 国产亚洲精品bt天堂精选| 亚洲精品一区二区三区精华液| 91精品国产麻豆国产自产在线| 欧美午夜片在线看| 欧美美女一区二区| 亚洲美女区一区| 国产精品午夜电影| 国产一级精品在线| 色域天天综合网| 一区二区三区在线视频免费 | 国产精品免费视频一区| 亚洲自拍另类综合| 久久新电视剧免费观看| 国产精品久久久久影视| 亚洲男同性视频| 美国精品在线观看| 在线免费观看成人短视频| 制服.丝袜.亚洲.中文.综合| 久久久久久久久久久久久女国产乱| 国产成人精品免费看| 欧美日韩精品欧美日韩精品| 精品国产一区二区三区四区四 | 国产99精品国产| 欧美午夜精品一区| 日韩毛片高清在线播放| www.亚洲国产| 欧美—级在线免费片| 美日韩一区二区| 在线看不卡av| 777欧美精品| 亚洲福利一二三区| 7777精品伊人久久久大香线蕉的| 久久夜色精品国产欧美乱极品| 蜜臀91精品一区二区三区| 欧美精品久久一区| 午夜欧美在线一二页| 欧美日韩一区成人| 日本中文在线一区| 亚洲精品一区二区三区蜜桃下载| 奇米精品一区二区三区在线观看一| 激情综合网av| 国产精品久久久久久久久免费桃花| 高清在线不卡av| 丁香婷婷深情五月亚洲| 亚洲乱码国产乱码精品精98午夜| 亚洲精品网站在线观看| 国产98色在线|日韩| 亚洲综合视频网| 国产视频亚洲色图| 欧美日本精品一区二区三区| 韩国欧美一区二区| 亚洲免费观看在线视频| 精品对白一区国产伦| 色婷婷av一区二区三区大白胸 | 国产在线精品一区二区不卡了| 久久精品免费在线观看| aaa国产一区| 亚洲a一区二区| 国产精品18久久久久久久久| 国产精品欧美久久久久无广告| 欧美日韩成人一区| 亚洲精品成a人| 精品欧美乱码久久久久久| 色丁香久综合在线久综合在线观看| 亚洲国产综合在线| 国产欧美一区二区三区网站| 日韩欧美亚洲一区二区| 欧美美女视频在线观看| 欧美在线免费观看亚洲| av亚洲精华国产精华精华| 国产精品一二三| 国产一区二区在线视频| 欧美日韩国产a| 一本大道久久a久久精二百| www.日韩精品| 欧美日韩国产综合视频在线观看| 奇米影视7777精品一区二区| 五月婷婷激情综合网| 日本一道高清亚洲日美韩| 美女mm1313爽爽久久久蜜臀| 国内久久婷婷综合| 91在线免费视频观看| 欧美这里有精品| 欧美v亚洲v综合ⅴ国产v| 久久嫩草精品久久久精品| 亚洲欧洲日产国码二区| 亚洲国产日产av| 精品一区二区三区欧美| 91在线码无精品| 2020国产精品自拍| 一区二区在线看| 午夜精品免费在线观看| 成人免费看的视频| 欧美二区乱c少妇| 亚洲美女视频在线| 国产九九视频一区二区三区| 91福利国产成人精品照片| 国产精品天美传媒| 国产成人亚洲精品狼色在线| 91超碰这里只有精品国产| 亚洲女子a中天字幕| 成人丝袜高跟foot| 国产日韩视频一区二区三区| av亚洲精华国产精华精| 精品国产一区二区三区久久影院 | 久久综合狠狠综合久久综合88| 日本一区二区三区在线不卡 | 久久久久久久综合日本| 成人国产在线观看| 日韩成人一区二区| 久久九九久精品国产免费直播| 成人一级黄色片| 看电视剧不卡顿的网站| 国产精品美女一区二区| 一级日本不卡的影视| 精品福利av导航| 91精品国产综合久久久久久久| 成人av手机在线观看| 免费人成在线不卡| 日韩成人精品在线观看| 欧美视频一区二区三区四区 | 美国三级日本三级久久99| 国产精品久久久久影视| 日韩欧美在线影院| 欧美日本高清视频在线观看| 国产一区中文字幕| 久久久久国产成人精品亚洲午夜| 欧美中文字幕亚洲一区二区va在线| 国产精品一区二区无线| 国产.欧美.日韩| 99国产精品一区| 91麻豆免费看| 欧美色图12p|