家家通 | 所有行業(yè) | 所有企業(yè)                                          加入家家通,生意很輕松! ·免費(fèi)注冊(cè) ·登陸家家通 ·設(shè)為首頁(yè)
關(guān)于我們
關(guān)于我們
今日加盟
今日加盟
會(huì)員中心
會(huì)員中心
 
當(dāng)前位置: 首頁(yè) » 資訊 » 正文

用單片機(jī)實(shí)現(xiàn)閘閥門(mén)的開(kāi)度檢測(cè)

發(fā)布日期:2011-07-02 11:01:04  瀏覽次數(shù):312

摘要:PLC以其固有的特性,在閘閥門(mén)智能化處理中得到了廣泛的應(yīng)用。解決好PLC與閘閥門(mén)開(kāi)度檢測(cè)裝置間的數(shù)據(jù)傳輸接口是實(shí)現(xiàn)閘閥門(mén)高效、可靠、安全運(yùn)行的關(guān)鍵。雖然,PLC提供SSI輸入模塊,但這類(lèi)模塊價(jià)格太高,需要配置專(zhuān)用電纜和處理軟件。利用單片機(jī)實(shí)現(xiàn)與閘閥門(mén)開(kāi)度檢測(cè)裝置(SSI)的輸入接口,實(shí)現(xiàn)串行數(shù)據(jù)轉(zhuǎn)換成并行數(shù)據(jù)與PLC數(shù)值量輸入模塊連接的輸出接口。這樣既降低了成本,又簡(jiǎn)化了PLC的編程。

關(guān)鍵詞:單片機(jī) 閘閥門(mén) 檢測(cè)方法

閘閥門(mén)開(kāi)度檢測(cè)裝置在淮安三線船閘工程中,是實(shí)現(xiàn)閘閥門(mén)安全、高效和智能化運(yùn)行的主要設(shè)備之一。該檢測(cè)裝置運(yùn)用主要目的為:

(1)在閘閥門(mén)啟閉操作時(shí),用于實(shí)時(shí)指示閘閥門(mén)的開(kāi)度位置,以利于操作員及時(shí)掌握閘閥門(mén)的運(yùn)行情況;

(2)閘閥門(mén)開(kāi)度參與閘閥門(mén)的運(yùn)行控制,如使閥門(mén)開(kāi)啟至任意設(shè)定開(kāi)度,實(shí)時(shí)監(jiān)視閥門(mén)在這一設(shè)定開(kāi)度時(shí)的下滑情況,并根據(jù)閥門(mén)下滑至不同關(guān)鍵位置時(shí),立即采取相應(yīng)的處理措施。

(3)控制左右人字閘門(mén)同步運(yùn)行與平穩(wěn)變速運(yùn)行。

ROQ425是德國(guó)海德漢(HENDENHAIN)的(13位+12位)絕對(duì)編碼器。特別適合于高精度、大量程閘閥門(mén)行程測(cè)量和控制的場(chǎng)合,是構(gòu)成閘閥門(mén)檢測(cè)裝置的主要部件。具有如下主要特點(diǎn):

(1)分辨率高,最高可達(dá)8192線/轉(zhuǎn)(13位);

(2)量程大,最高可達(dá)4096轉(zhuǎn)(12位);

(3)掉電位置保護(hù),無(wú)論開(kāi)度儀掉電多少時(shí)間,系統(tǒng)上電后,ROQ425總能準(zhǔn)確地測(cè)量出閘門(mén)當(dāng)前的開(kāi)度。

(4)數(shù)據(jù)輸出接口,采用串行同步接口(SSI)傳輸數(shù)據(jù)。

PLC以其固有的特性,在閘閥門(mén)智能化處理中得到了廣泛的應(yīng)用。解決好PLC與閘閥門(mén)開(kāi)度檢測(cè)裝置間的數(shù)據(jù)傳輸接口是實(shí)現(xiàn)閘閥門(mén)高效、可靠、安全運(yùn)行的關(guān)鍵。雖然,PLC提供SSI輸入模塊,但這類(lèi)模塊價(jià)格太高,需要配置專(zhuān)用電纜和處理軟件。利用單片機(jī)實(shí)現(xiàn)與閘閥門(mén)開(kāi)度檢測(cè)裝置(SSI)的輸入接口,實(shí)現(xiàn)串行數(shù)據(jù)轉(zhuǎn)換成并行數(shù)據(jù)與PLC數(shù)值量輸入模塊連接的輸出接口。這樣既降低了成本,又簡(jiǎn)化了PLC的編程。

1. 硬件設(shè)計(jì)

硬件設(shè)計(jì)方案主要實(shí)現(xiàn)

(1)與ROQ425的SSI連接;

(2)與PLC模擬量輸入模塊和MODBUS口的連接;

(3)完成輸入串行數(shù)據(jù)(ROQ425 SSI)到輸出4-20mA的轉(zhuǎn)換。

(4)完成輸入串行數(shù)據(jù)(ROQ425 SSI)通過(guò)MODBUS口輸出到PLC

1.1 ROQ425 SSI接口介紹

ROQ425 SSI接口電壓為5V±5%,空載時(shí)最大電流功耗為250mA。采用差分SN65LBC176線接收/驅(qū)動(dòng)器進(jìn)行數(shù)據(jù)傳輸,最遠(yuǎn)傳輸距離可達(dá)100m。ROQ425內(nèi)部接口見(jiàn)圖1。

ROQ425是多圈絕對(duì)型旋轉(zhuǎn)編碼器,每圈用13位表示精度,用12位記錄圈數(shù)。因此,開(kāi)度絕對(duì)位置值采用25位字長(zhǎng)表示。數(shù)據(jù)發(fā)送時(shí)序關(guān)系見(jiàn)圖2,其工作原理為:

  • 不發(fā)送數(shù)據(jù)時(shí),CLOCK為高電平。
  • 數(shù)據(jù)發(fā)送過(guò)程:當(dāng)ROQ425接收到CLOCK發(fā)送周期(nT)的第一個(gè)下降沿時(shí),ROQ425讀取25位字長(zhǎng)的絕對(duì)位置值存入數(shù)據(jù)緩存器。數(shù)據(jù)緩存器中數(shù)據(jù)隨著CLOCK發(fā)送周期的上升沿串行同步發(fā)送數(shù)據(jù),第一個(gè)發(fā)出的數(shù)據(jù)位是絕對(duì)位置值的第25位(MSB),最后一個(gè)發(fā)出的數(shù)據(jù)位是絕對(duì)位置值的第1位。
  • 中斷數(shù)據(jù)發(fā)送:在數(shù)據(jù)發(fā)送過(guò)程中,當(dāng)CLOCK為高電平時(shí)間超過(guò)t3(35us)時(shí),ROQ425終止當(dāng)前數(shù)據(jù)發(fā)送周期,為下一個(gè)重新開(kāi)始的發(fā)送周期做好準(zhǔn)備。
  • 數(shù)據(jù)重發(fā):當(dāng)完成一個(gè)絕對(duì)位置值的數(shù)據(jù)字發(fā)送周期后,DATA維持t3時(shí)間的低電平。若在t3(12~35us)內(nèi),CLOCK開(kāi)始一個(gè)新的發(fā)送周期,就會(huì)重發(fā)剛才發(fā)送的絕對(duì)位置值數(shù)據(jù)。

1.2 硬件工作原理

硬件設(shè)計(jì)由SSI接口、I/O接口、單片機(jī)和電源四部分組成。

(1)SSI接口選用ROQ425推薦的RS422接口芯片MAX488。

(2)I/O接口采用光電耦合器隔離,DA模塊采用AD7541和AD694。MODBUS接口模塊采用MAX232E。

(3)單片機(jī)選用高性能的AT89C51(單字長(zhǎng)指令、定時(shí)/計(jì)數(shù)器、看門(mén)狗)

(4)選用24VDC輸入5VDC輸出和24VDC輸入15VDC輸出的DC/DC模塊電源。

原理圖如下


2.軟件設(shè)計(jì)

通過(guò)對(duì)AT89C51進(jìn)行編程,達(dá)到實(shí)時(shí)將SSI接口數(shù)據(jù)轉(zhuǎn)換成4-20輸出或通過(guò)MODBUS口傳送至PLC系統(tǒng)的目的。主要流程如下:

  • 第一步 :初始化設(shè)置。包括串口設(shè)置,中斷設(shè)置,PLC地址的設(shè)置,零點(diǎn)設(shè)置等
  • 第二步:讀取ROQ425數(shù)據(jù)并轉(zhuǎn)換成十進(jìn)制
  • 第三步:將轉(zhuǎn)換過(guò)的數(shù)據(jù)通過(guò)并口和串口輸出
  • 第四步:重復(fù)第二步

下面是AT89C51的部分源程序:

#include <reg51.h>

#include <stdio.h> /* define I/O functions */

#include <absacc.h> /* define absacc functions */

#include <STDLIB.h> /* define absacc functions */

#include <intrins.h> /*#define uchar unsigned char*/

#define _Nop() _nop_()

typedef unsigned int word;

typedef unsigned char byte;

typedef unsigned long dword;

static word data da,db,dc,df,p,crc1,cir,high;

static dword data da1,db1,dc1,df1,dd,de,max,zero,zero2,dcb;

static byte data show[7],show1[4],show2[4],sendm[8],s[4],bb[4];

static byte data dd1,watch,kk,t[1],dd2[1];

code byte disp[16]={0x77,0x41,0x3b,0x6b,0x4d,0x6e,0x7e,0x43,0x7f,0x6f,0x5f,0x7c,0x36,0x79,0x3e,0x1e};

void readgray();/*讀取ROQ425數(shù)據(jù)*/

void delay();

void i_start();

void i_stop();

void i_init();

void i_send(byte);

void display();

void change(dword);

void change1(dword);

void setzero();

void zero1();

void nub();

void addr();

void cir1();

void e_start();

void e_stop();

void e_send(byte);

byte e_recevie();

void e_ack(bit);

void e_send1(dword);

bit isend(byte,byte,byte *,byte);

bit ireceive(byte,byte,byte *,byte);

void watchdog();

void one();

void two();

void three();

void one1();

void two1();

void three1();

void pos();

void res();

void comsend(byte);

word crc16(byte *);

byte shj();

void main()

{

register i,j,k,x;

bit d;

dcb=0;

show[0]=0x70;

show[1]=0x00;

show[2]=0x27;

display();

for (i=0;i<4;i++)

{

show1[i]=0;

show2[i]=0;

}

SCON=0xc8;/*采用方式3 */

TMOD=0x20;

TH1=0xfd;

TL1=0xfd;

TR1=1;

ET1=0;

ES=0;

EA=0;

high=0x07;

max=8000;

dd1=0;

sda1=1;

delay();

sda1=0;

dd2[0]=0;

while(1)

{

for (j=0;j<4;j++)

{

for (x=0;x<8;x++)

{

zero2*=2;

z=(bit)(show2[j]&0x80);

if (z==1)

zero2++;

show2[j]=show2[j]<<1;

}

}

zero=zero2;

p=0;

watchdog();

txd=1;

readgray();

watchdog();

dd=da & 0x0fff;

de=db & 0x1fff;

dc1=dd*8192+de;

P0=dc1 & 0x000000ff;//(dc1 & 0x000001fe)>>1;

P2=(dc1 & 0x00000f00)>>8;//(dc1 & 0x00001e00)>>9;

if(t[0]==1)

{

if((zero>=0)&&(zero<=10000000))

one();

else

if((zero>10000000)&&(zero<=33390591))

two();

else

three();

}

else

{

if((zero>=0)&&(zero<=10000000))

one1();

else

if((zero>10000000)&&(zero<=33390591))

two1();

else

three1();

}

sendm[0]=0x06;

sendm[1]=0x06;

sendm[2]=0x00;

sendm[3]=0x05;

sendm[4]=dc1/256;

sendm[5]=dc1%256;

crc1=crc16(sendm);

sendm[6]=crc1 / 256;

sendm[7]=crc1 & 0xff;

rd=1;

for(i=0;i<8;i++)

{

ACC=sendm[i];

TB8=par;

comsend(sendm[i]);

}

watchdog();

display();

}//end while

}//end main

3.結(jié)束語(yǔ)

采用上述方法實(shí)現(xiàn)PLC與閘閥門(mén)開(kāi)度檢測(cè)裝置之間的連接。不僅具有成本低、PLC編程簡(jiǎn)單的特點(diǎn),而且具有高可靠性。



 
推薦企業(yè)
熱門(mén)產(chǎn)品

機(jī)電之家網(wǎng) - 機(jī)電行業(yè)權(quán)威網(wǎng)絡(luò)宣傳媒體

關(guān)于我們 | 聯(lián)系我們 | 廣告合作 | 付款方式 | 使用幫助 | 會(huì)員助手 | 免費(fèi)鏈接

Copyright 2011 jdzj.com All Rights Reserved技術(shù)支持:杭州濱興科技股份有限公司

客戶服務(wù)熱線:0571-87774297
網(wǎng)站經(jīng)營(yíng)許可證:浙B2-20080178 浙B2-20080178-4


經(jīng)營(yíng)性網(wǎng)站備案信息 ICP經(jīng)營(yíng)
許可證
營(yíng)業(yè)執(zhí)照(副本) 不良信息舉報(bào)中心
主站蜘蛛池模板: 曰韩无码无遮挡a级毛片| 秋霞黄色一级片| 国产成人无码专区| 91久久偷偷做嫩草影院免| 小sao蹄子你好sao啊| 久久99精品久久久久久久野外| 最近中文字幕mv免费高清视频7| 亚洲成aⅴ人片在线观| 波多野结衣中文字幕一区二区三区 | 处破痛哭A√18成年片免费| 一级毛片60分钟在线播放久草高清在线| 日本人指教视频| 久久精品人人爽人人爽| 最近韩国电影免费高清播放在线观看| 亚洲国产精品尤物yw在线观看 | 久久国产精品久久| 日韩精品无码一区二区三区四区| 亚洲伊人tv综合网色| 欧美日韩一区二区三区四区在线观看 | 免费看欧美一级特黄a大片 | 爱做久久久久久| 免费一区二区三区四区五区| 精品亚洲成a人片在线观看| 又硬又粗又长又爽免费看| 色一情一乱一伦色一情一乱一伦| 国产女人的一级毛片视频| 成人在线手机视频| 国产欧美专区在线观看| 69式互添免费视频| 国产精品久久久久久久久久久不卡| 2022久久国产精品免费热麻豆| 国产麻豆剧看黄在线观看| 999无色码中文字幕| 国语对白清晰好大好白| 99re66热这里都是精品| 在线a亚洲视频播放在线观看 | 夜夜高潮夜夜爽夜夜爱爱一区| h片在线播放免费高清| 天天躁日日躁狠狠躁人妻| h视频在线免费看| 在线观看精品视频网站www |