亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

抽油機智能控制系統(tǒng)的制作方法

文檔序號:5399273閱讀:147來源:國知局
專利名稱:抽油機智能控制系統(tǒng)的制作方法
技術(shù)領(lǐng)域
本發(fā)明設(shè)計一種油田抽油機控制技術(shù),尤其是抽油機智能控制系統(tǒng)。
背景技術(shù)
目前,在我國各大油田不像中東的油田那樣有很強的自噴能力,有相當(dāng)一部分低滲透的低產(chǎn)油井,其中往復(fù)式有桿抽油系統(tǒng)會出現(xiàn)供液不足的情況。所謂供液不足即油井液面低于抽油泵吸入口,出現(xiàn)這種情況就會使抽油裝置出現(xiàn)空抽現(xiàn)象。若抽油裝置出現(xiàn)空抽,就會浪費電能,同時將導(dǎo)致抽油泵、抽油桿、油管等磨損、壽命縮短。據(jù)有關(guān)報導(dǎo),抽油機的運行效率特別低,在我國平均效率為25.96%,國外平均水平為30.05%。我國大部分油田對這種現(xiàn)象的經(jīng)驗解決方法是間抽,間抽控制的原始做法是派人定時到油井去開停抽油機,使抽油機開一段時間停一段時間,即使在發(fā)達國家,目前也還有不少油井采用這種人工控制方式,以便解決抽油機的低效和浪費問題。這種做法每天要派人去井場操作好幾次,經(jīng)過長期試驗才能摸索出適合各油井的間抽規(guī)律,費工費時。于是有地油井引入了定時鐘,只需設(shè)定開、停機時間,便能自動地進行間抽控制,這雖然減少了人工,但仍然無法解決令抽油機的工作能力動態(tài)地響應(yīng)油井負荷的變化,達到抽、停時間間隔為最優(yōu)化,同時還有可能會影響油井的產(chǎn)量。

發(fā)明內(nèi)容
本發(fā)明的目的是提供一種在不影響油產(chǎn)量的情況下可以及時有效地判斷井口是否出油,快速、有效地控制抽油機的啟停時間,使抽油機的停井時間最長,開井時間最短的抽油機智能控制系統(tǒng),它解決了目前其它技術(shù)存在的缺點,本發(fā)明的目的是這樣實現(xiàn)的,它是由人機對話界面、適配器、工控機、信號數(shù)據(jù)轉(zhuǎn)換器、數(shù)據(jù)信號轉(zhuǎn)換器、流量信號采集傳感器、液位傳感器、電機控制系統(tǒng)、電機連接而成,人機對話界面與工控機由適配器連接;在工控機的輸入端由電纜連接著信號數(shù)據(jù)轉(zhuǎn)換器,其輸出端由電纜連接著數(shù)據(jù)信號轉(zhuǎn)換器;信號數(shù)據(jù)轉(zhuǎn)換器的輸入端通過電纜與流量信號采集傳感器和液位傳感器相連;數(shù)據(jù)信號轉(zhuǎn)換器的輸出端通過電纜與電機控制系統(tǒng)連接,電機控制系統(tǒng)與電機連接;在工控機內(nèi)裝有抽油機智能控制程序。
該系統(tǒng)功能主要由計算機控制程序?qū)崿F(xiàn)。全套系統(tǒng)的主要功能是通過流量開關(guān)判斷有油無油,根據(jù)初值動態(tài)計算最優(yōu)停開時間,以計算結(jié)果去控制油井電機,并配有人機界面動態(tài)顯示抽油過程。
該技術(shù)采用工控機輸入端配接信號數(shù)據(jù)轉(zhuǎn)換器、流量信號采集傳感器和液位傳感器,輸出端配接數(shù)據(jù)信號轉(zhuǎn)換器和電機控制系統(tǒng)來控制抽油機電機的方式,在不影響油產(chǎn)量的情況下可以及時有效地判斷井口是否出油,快速、有效地控制抽油機的啟停時間,使抽油機的停井時間最長,開井時間最短。該控制系統(tǒng)能選擇和控制最優(yōu)的停開井時間,達到耗電最小又不影響油井產(chǎn)量,同時延長設(shè)備壽命,只要選擇合適的初值,該系統(tǒng)可以快速準(zhǔn)確計算所需結(jié)果,而且其優(yōu)化結(jié)果是跟蹤地質(zhì)條件、油井條件、注水等生產(chǎn)工藝措施的變化,始終保持一動態(tài)的最優(yōu)停開時間。除了優(yōu)化停開時間比,同時優(yōu)化停井時間和開井時間總的周期,如停30小時開10小時與停300小時開100小時停開時間比是一樣的,但他們的優(yōu)化周期不一樣,優(yōu)化周期用數(shù)學(xué)上“瞎子爬山法”的方法計算,一般情況下工人都或多或少有此經(jīng)驗,只要確定初值不是差得太多,都可以經(jīng)上述優(yōu)化確定最佳停開時間。


圖1為抽油機智能控制系統(tǒng)示意圖,圖中1、人機對話界面2、適配器3、工控機4、信號數(shù)據(jù)轉(zhuǎn)換器5、數(shù)據(jù)信號轉(zhuǎn)換器6、流量信號采集傳感器7、液位傳感器8、電機控制系統(tǒng)9、電機
圖2為抽油機智能控制程序圖
具體實施例方式在圖1中,人機對話界面1與工控機3由適配器2連接;在工控機3的輸入端由電纜連接著信號數(shù)據(jù)轉(zhuǎn)換器4,其輸出端由電纜連接著數(shù)據(jù)信號轉(zhuǎn)換器5;信號數(shù)據(jù)轉(zhuǎn)換器4的輸入端通過電纜與流量信號采集傳感器6和液位傳感器7相連;數(shù)據(jù)信號轉(zhuǎn)換器5的輸出端通過電纜與電機控制系統(tǒng)8連接,電機控制系統(tǒng)8與電機9連接;在工控機3內(nèi)裝有抽油機智能控制程序。
在圖2中,抽油機智能控制程序為
unit Unit1;interfaceuses   Windows,Messages,SysUtils,Variants,Classes,Graphics,Controls,F(xiàn)orms,   Dialogs,ExtCtrls,StdCtrls,   OleCtrls,MPlayer,   MSCommLib_TLB,Gauges;<!-- SIPO <DP n="3"> --><dp n="d3"/>typeTForm1=class(TForm)  Image1TImage;  Image2TImage;  Image3TImage;  Timer1TTimer;  Image4TImage;  Image5TImage;  Label1TLabel;  Image6TImage;  Label2TLabel;  Label3TLabel;  Label4TLabel;  Label5TLabel;  Label6TLabel;Label7TLabel;Label9TLabel;  Panel1TPanel;  GroupBox1TGroupBox;  GroupBox2TGroupBox;  Label10TLabel;  Label11TLabel;  Bevel1TBevel;  Label12TLabel;  Label13TLabel;  Label14TLabel;  Edit2TEdit;  Label15TLabel;  Label16TLabel;  Label17TLabel;  Edit1TEdit;  Edit5TEdit;  Edit3TEdit;  Timer2TTimer;  Button1TButton;  Button2TButton;  Button3TButton;  MSComm1TMSComm;  Label18TLabel;  Shape1TShape;  Label19TLabel;  Label8TLabel;<!-- SIPO <DP n="4"> --><dp n="d4"/>   Edit4TEdit;   Label20TLabel;   Label21TLabel;   Timer3TTimer;   MediaPlayer1TMediaPlayer;   procedure Timer1Timer(SenderTObject);   procedure Timer2Timer(SenderTObject);   procedure Button1Click(SenderTObject);   procedure Button2Click(SenderTObject);   procedure Button3Click(SenderTObject);   procedure FormCreate(SenderTObject);   procedure Timer3Timer(SenderTObject);  private   {Private declarations}   T1,T2,T3,t4tdatetime;   st0,stop0,st1,STOP1integer;  oldstatusboolean;  ainteger;public   {Public declarations}end;varForm1TForm1;implementation  {$R*.dfm}  function timetoint(ttdatetime)integer;var  h,m,s,ttimeinteger;  xstring;  begin  x=timetostr(t);  if length(x)>7 then   ttime=strtoint(copy(x,1,2))*3600+strtoint(copy(x,4,2))*60+strtoint(copy(x,7,2))   else  ttime=strtoint(copy(x,1,1))*3600+strtoint(copy(x,3,2))*60+strtoint(copy(x,6,2));  timetoint=ttime;<!-- SIPO <DP n="5"> --><dp n="d5"/>end;function getdata(Addrstring;chstring)single;varsendstring,recevstring1,head,temp1String;count,tou,weiinteger;xsingle;begin  sendstring=′#′+Addr+ch+chr(13);  head=′>′;   Form1.MSComm1.InBufferCount=0;   recevstring1=″;   count=0;   if not Form1.MSComm1.PortOpen then   Form1.MSComm1.PortOpen=True;   Form1.MSComm1.output=sendstring;   while Form1.MSComm1.PortOpen do   begin   count=count+1;   If Form1.MSComm1.InBufferCount>0 Then  recevstring1=recevstring1+Form1.MSComm1.Input;   if pos(chr(13),recevstring1)>0 then   begin   if pos(head,recevstring1)>0 then  begin   tou=Pos(head,recevstring1);   wei=Pos(chr(13),recevstring1);   temp1=copy(recevstring1,tou+1,wei-tou-1);   x=strtofloat(temp1);   getdata=x;   break;  end  else  begin   Form1.MSComm1.InBufferCount=0;   //if count>3000 then   Form1.MSComm1.output=sendstring;   recevstring1=″;   end;<!-- SIPO <DP n="6"> --><dp n="d6"/>   end;   if count>30000 then   begin  count=0;  getdata=0;  break;   end;end;  Form1.MSComm1.PortOpen=false;end;function getdata2(Addr2string;ch2string)string;varsendstring2,recevstring2,headString;countinteger;beginsendstring2=′#′+Addr2+ch2+chr(13);  head=′>′;  Form1.MSComm1.InBufferCount=0;  recevstring2=″;  count=0;   if not Form1.MSComm1.PortOpen then  Form1.MSComm1.PortOpen=True;  Form1.MSComm1.output=sendstring2;   while Form1.MSComm1.PortOpen do   begin   count=count+1;  If Form1.MSComm1.InBufferCount>0 Then  begin   recevstring2=recevstring2+Form1.MSComm1.Input;  if recevstring2=head then   break   else   begin   Form1.MSComm1.InBufferCount=0;   //if count>3000 then  Form1.MSComm1.output=sendstring2;  recevstring2=″;  end;<!-- SIPO <DP n="7"> --><dp n="d7"/>   end;   if count>30000 then   begin   count=0;   break;   end;end;   Form1.MSComm1.PortOpen=false;end;procedure yewei();//液位var   Vcsingle;begin  if form1.timer1.Enabled=false then  begin   Vc=getdata(′01′,′0′);   form1.label1.height=252-round((Vc-3.7)*17.29);   form1.label2.height=252-round((Vc-3.7)*17.29);  end;  if form1.timer1.Enabled=true then   if getdata(′01′,′1′)<1 then   begin  Vc=getdata(′01′′0′);  form1.label2.height=0;//lable2 for oil pipe   form1.label1.height=252-round((Vc-3.7)*17.29);   end   else   begin   //form1.label1.height=300;   //form1.label2.height=form1.label1.height;   form1.label1.height=252-round((Vc-3.7)*17.29);   form1.label2.height=252-round((Vc-3.7)*17.29);   end;  end;procedure TForm1.Timer2Timer(SenderTObject);varl,ysingle;begin<!-- SIPO <DP n="8"> --><dp n="d8"/>yewei;if oldstatus thenbegin  Getdata2(′02′,′000E′);  form1.timer1.Enabled=true;  form1.timer3.Enabled=false;  form1.MediaPlayer1.play;  form1.Shape1.brush.Color=clred;endelse   begin  Getdata2(′02′,′0000′);   form1.timer1.Enabled=false;   form1.timer3.Enabled=true;   form1.Shape1.brush.Color=clyellow;   form1.mediaplayer1.stop;end;if oldstatus then//..........................................3<br/>begin   l=getdata(′01′,′1′);   y=getdata(′01′,′0′);   //form1.edit4.Text=times;   if((1>5)or(y<3))then //..............................2  begin   oldstatus=false;   T3=now;   st1=timetoint(T3-T1);  //form1.edit6.text=inttostr(st1);   if St1>=st0 then //......................1   begin   st0=st0+10;   stop0=stop0-10;   form1.edit5.text=inttostr(st0);   form1.edit3.text=inttostr(stop0);   //T1=T3;   end   else//.....................................1   begin   st0=st0-10;   stop0=stop0+10;  form1.edit5.text=inttostr(st0);<!-- SIPO <DP n="9"> --><dp n="d9"/>   form1.edit3.text=inttostr(stop0);   //T1=T3;   end;//...................................1....   end   else   begin   oldstatus=true;   T3=now;   end;   end  else//........................................................3   begin   T4=now;   stop1=timetoint(T4-T3);   if stop1>=stop0 then   begin  oldstatus=true;  T1=T4;  end  else oldstatus=false   end;end;procedure TForm1.Timer1 Timer(SenderTObject);begin  form1.Edit4.Text=timetostr(now);if a=0 thenbeginimage2.Visible=false;image3.Visible=false;image4.Visible=false;Label4.Visible=false;Label6.Visible=false;Label3.Visible=false;Label8.Visible=false;Label7.Visible=true;Label5.Visible=true;image1.Visible=true;end;if a=1 thenbegin<!-- SIPO <DP n="10"> --><dp n="d10"/>  image1.Visible=false;  image3.Visible=false;  image4.Visible=false;  Label4.Visible=false;  Label5.Visible=false;  Label3.Visible=false;  Label7.Visible=false;  Label8.Visible=true;  image2.Visible=true;  Label6.Visible=true;   end;if a=2 thenbegin  image1.Visible=false;  image2.Visible=false;  image4.Visible=false;  Label4.Visible=false;  Label6.Visible=false;  Label3.Visible=false;  Label8.Visible=false;  Label7.Visible=true;  Label5.Visible=true;  image3.Visible=true;   end;if a=3 thenbegin  image1.Visible=false;  image2.Visible=false;  image3.Visible=false;  Label5.Visible=false;  Label6.Visible=false;  Label7.Visible=false;  Label8.Visible=false;  Label3.Visible=true;  Label4.Visible=true;  image4.Visible=true;   end;if a=0 thenbegin   a=a+1;   end   else if a=1 then<!-- SIPO <DP n="11"> --><dp n="d11"/>  a=a+1  else if a=2 then  a=a+1  else  a=0;  end;procedure TForm1.Button1Click(SenderTObject);var   nstring;   m,kinteger;begin    Val(form1.edit1.text,st0,m);Val(form1.edit2.text,st0,k);if(m<>0)or(k<>0)thenShowMessage(′您輸入的初始數(shù)據(jù)有誤,請重新輸入!′)elsebegintimer2.Enabled=true;   n=getdata2(′02′,′0000′);   st0=strtoint(form1.edit1.text);   stop0=strtoint(form1.edit2.text);   T1;=now;   oldstatus=true;   end;end;//.........................procedure TForm1.Button2Click(SenderTObject);begintimer2.Enabled=false;timer1.Enabled=false;Getdata2(′02′,′0000′);form1.mediaplayer1.stop;end;procedure TForm1.Button3Click(SenderTObject);beginform1.mediaplayer1.stop;application.Terminate;end;<!-- SIPO <DP n="12"> --><dp n="d12"/>procedure TForm1.FormCreate(SenderTObject);beginform1.Timer1.Enabled=false;form1.Timer2.Enabled=false;Label6.Visible=false;Label5.Visible=false;end;procedure TForm1.Timer3Timer(SenderTObject);beginform1.Edit4.Text=timetostr(now);end;end.
權(quán)利要求
1、抽油機智能控制系統(tǒng),它是由人機對話界面(1)、適配器(2)、工控機(3)、信號數(shù)據(jù)轉(zhuǎn)換器(4)、數(shù)據(jù)信號轉(zhuǎn)換器(5)、流量信號采集傳感器(6)、液位傳感器(7)、電機控制系統(tǒng)(8)、電機(9)連接而成,其特征是人機對話界面(1)與工控機(3)由適配器(2)連接;在工控機(3)的輸入端由電纜連接著信號數(shù)據(jù)轉(zhuǎn)換器(4),在工控機(3)的輸出端由電纜連接著數(shù)據(jù)信號轉(zhuǎn)換器(5);信號數(shù)據(jù)轉(zhuǎn)換器(4)的輸入端通過電纜與流量信號采集傳感器(6)和液位傳感器(7)相連;數(shù)據(jù)信號轉(zhuǎn)換器(5)的輸出端通過電纜與電機控制系統(tǒng)(8)連接,電機控制系統(tǒng)(8)與電機(9)連接;在工控機(3)內(nèi)裝有抽油機智能控制程序。
2、根據(jù)權(quán)利要求1所述的抽油機智能控制系統(tǒng),其特征是操作程序如下unit Unit1;interfaceusesWindows,Messages,SysUtils,Variants,Classes,Graphics,Controls,Forms,Dialogs,ExtCtrls,StdCtrls,OleCtrls,MPlayer,MSCommLib_TLB,Gauges;typeTForm1=class(TForm)Image1:TImage;Image2:TImage;Image3:TImage;Timer1:TTimer;Image4:TImage;Image5:TImage;<dp n="c1"/>Label1:TLabel;Image6:TImage;Label2:TLabel;Label3:TLabel;Label4:TLabel;Label5:TLabel;Label6:TLabel;Label7:TLabel;Label9:TLabel;Panel1:TPanel;GroupBox1:TGroupBox;GroupBox2:TGroupBox;Label10:TLabel;Label11:TLabel;Bevel1:TBevel;Label12:TLabel;Label13:TLabel;Label14:TLabel;Edit2:TEdit;Label15:TLabel;Label16:TLabel;Label17:TLabel;Edit1:TEdit;Edit5:TEdit;Edit3:TEdit;Timer2:TTimer;Button1:TButton;Button2:TButton;Button3:TButton;MSComm1:TMSComm;Label18:TLabel;Shape1:TShape;Label19:TLabel;Label8:TLabel;Edit4:TEdit;Label20:TLabel;Label21:TLabel;Timer3:TTimer;MediaPlayer1:TMediaPlayer;procedure Timer1Timer(Sender:TObject);procedure Timer2Timer(Sender:TObject);<dp n="c2"/>procedure Button1Click(Sender:TObject);procedure Button2Click(Sender:TObject);procedure Button3Click(Sender:TObject);procedure FormCreate(Sender:TObject);procedure Timer3Timer(Sender:TObject);private{Private declarations}T1,T2,T3,t4:tdatetime;st0,stop0,st1,STOP1:integer;oldstatus:boolean;a:integer;public{Public declarations}end;varForm1:TForm1;implementation{$R*.dfm}function timetoint(t:tdatetime):integer;varh,m,s,ttime:integer;x:string;beginx:=timetostr(t);if length(x)>7 thenttime:=strtoint(copy(x,1,2))*3600+strtoint(copy(x,4,2))*60+strtoint(copy(x,7,2))elsettime:=strtoint(copy(x,1,1))*3600+strtoint(copy(x,3,2))*60+strtoint(copy(x,6,2));timetoint:=ttime;end;function getdata(Addr:string;ch:string):single;varsendstring,recevstring1,head,temp1:String;<dp n="c3"/>count,tou,wei:integer;x:single;beginsendstring:=′#′+Addr+ch+chr(13);head:=′>′;Form1.MSComm1.InBufferCount:=0;recevstring1:=";count:=0;if not Form1.MSComm1.PortOpen thenForm1.MSComm1.PortOpen:=True;Form1.MSComm1.output:=sendstring;while Form1.MSComm1.PortOpen dobegincount:=count+1;If Form1.MSComm1.InBufferCount>0 Thenrecevstring1:=recevstring1+Form1.MSComm1.Input;if pos(chr(13),recevstring1)>0 thenbeginif pos(head,recevstring1)>0 thenbegintou:=Pos(head,recevstring1);wei:=Pos(chr(13),recevstring1);temp1:=copy(recevstring1,tou+1,wei-tou-1);x:=strtofloat(temp1);getdata:=x;break;endelsebeginForm1.MSComm1.InBufferCount:=0://if count>3000 thenForm1.MSComm1.output:=sendstring;recevstring1:=";end;end;if count>30000thenbegincount:=0;getdata:=0;break;end;<dp n="c4"/>end;Form1.MSComm1.PortOpen:=false;end;function getdata2(Addr2:string;ch2:string):string;varsendstring2,recevstring2,head:String;count:integer;beginsendstring2:=′#′+Addr2+ch2+chr(13);head:=′>′;Form1.MSComm1.InBufferCount:=0;recevstring2:=";count:=0;if not Form1.MSComm1.PortOpen thenForm1.MSComm1.PortOpen:=True;Form1.MSComm1.output:=sendstring2;while Form1.MSComm1.PortOpen dobegincount:=count+1;If Form1.MSComm1.InBufferCount>0Thenbeginrecevstring2:=recevstring2+Form1.MSComm1.Input;if recevstring2=head thenbreakelsebeginForm1.MSComm1.InBufferCount:=0;//if count>3000 thenForm1.MSComm1.output:=sendstring2;recevstring2:=";end;end;if count>30000thenbegincount:=0;break;end;end;Form 1.MSComm1.PortOpen:=false;end;<dp n="c5"/>procedure yewei();//液位varVc:single;beginif form1.timer1.Enabled=false thenbeginVc:=getdata(′01′,′0′);form1.label1.height:=252-round((Vc-3.7)*17.29);form1.label2.height:=252-round((Vc-3.7)*17.29);end;if form1.timer1.Enabled=true thenif getdata(′01′,′1′)<1 thenbeginVc:=getdata(′01′,′0′);form1.label2.height:=0;//lable2 for oil pipeform1.label1.height:=252-round((Vc-3.7)*17.29);endelsebegin//form1.label1.height:=300;//form1.label2.height:=form1.label1.height;form1.label1.height:=252-round((Vc-3.7)*17.29);form1.label2.height:=252-round((Vc-3.7)*17.29);end;end;procedure TForm1.Timer2Timer(Sender:TObject);varl,y:single;beginyewei;if oldstatus thenbeginGetdata2(′02′,′000E′);form1.timer1.Enabled:=true;form1.timer3.Enabled:=false;form1.MediaPlayer1.play;form1.Shape1.brush.Color:=clred;endelse<dp n="c6"/>beginGetdata2(′02′,′0000′);form1.timer1.Enabled:=false;form1.timer3.Enabled:=true;form1.Shape1.brush.Color:=clyellow;form1.mediaplayer1.stop;end;if oldstatus then//..........................................3beginl:=getdata(′01′,′1′);y:=getdata(′01′,′0′);//form1.edit4.Text:=times;if((1>5)or(y<3))then//.....................................2beginoldstatus:=false;T3:=now;st1:=timetoint(T3-T1);//form1.edit6.text:=inttostr(st1);if St1>=st0 then//......................1beginst0:=st0+10;stop0:=stop0-10;form1.edit5.text:=inttostr(st0);form1.edit3.text:=inttostr(stop0);//T1:=T3;endelse//..................................1beginst0:=st0-10;stop0:=stop0+10;form1.edit5.text:=inttostr(st0);form1.edit3.text:=inttostr(stop0);//T1:=T3;end;//...................................1....endelsebeginoldstatus:=true;T3:=now;end;endelse//........................................................3<dp n="c7"/>beginT4:=now;stop1:=timetoint(T4-T3);if stop1>=stop0 thenbeginoldstatus:=true;T1:=T4;endelseoldstatus:=falseend;end;procedure TForm1.Timer1Timer(Sender:TObject);beginform1.Edit4.Text:=timetostr(now);if a=0 thenbeginimage2.Visible:=false;image3.Visible:=false;image4.Visible:=false;Label4.Visible:=false;Label6.Visible:=false;Label3.Visible:=false;Label8.Visible:=false;Label7.Visible:=true;Label5.Visible:=true;image1.Visible:=true;end;if a=1 thenbeginimage1.Visible:=false;image3.Visible:=false;image4.Visible:=false;Label4.Visible:=false;Label5.Visible:=false;Label3.Visible:=false;Label7.Visible:=false;Label8.Visible:=true;image2.Visible:=true;Label6.Visible:=true;<dp n="c8"/>end;if a=2thenbeginimage1.Visible:=false;image2.Visible:=false;image4.Visible:=false;Label4.Visible:=false;Label6.Visible:=false;Label3.Visible:=false;Label8.Visible:=false;Label7.Visible:=true;Label5.Visible:=true;image3.Visible:=true;end;if a=3 thenbeginimage1.Visible:=false;image2.Visible:=false;image3.Visible:=false;Label5.Visible:=false;Label6.Visible:=false;Label7.Visible:=false;Label8.Visible:=false;Label3.Visible:=true;Label4.Visible:=true;image4.Visible:=true;end;if a=0 thenbegina:=a+1;endelse if a=1thena:=a+1else if a=2thena:=a+1elsea:=0;end;procedure TForm1.Button1Click(Sender:TObject);varn:string;m,k:integer;beginVal(form1.edit1.text,st0,m);<dp n="c9"/>Val(form1.edit2.text,st0,k);if(m<>0)or(k<>0)thenShowMessage(′您輸入的初始數(shù)據(jù)有誤,請重新輸入!′)elsebegintimer2.Enabled:=true;n:=getdata2(′02′,′0000′);st0:=strtoint(form1.edit1.text);stop0:=strtoint(form1.edit2.text);T1:=now;oldstatus:=true;end;end;//.........................procedure TForm1.Button2Click(Sender:TObject);begintimer2.Enabled:=false;timer1.Enabled:=false;Getdata2(′02′,′0000′);form1.mediaplayer1.stop;end;procedure TForm1.Button3Click(Sender:TObject);beginform1.mediaplayer1.stop;application.Terminate;end;procedure TForm1.FormCreate(Sender:TObject);beginform1.Timer1.Enabled:=false;form1.Timer2.Enabled:=false;Label6.Visible:=false;Label5.Visible:=false;end;procedure TForm1.Timer3Timer(Sender:TObject);beginform1.Edit4.Text:=timetostr(now);end;end.。
全文摘要
抽油機智能控制系統(tǒng)是一種油田抽油機控制技術(shù),它解決了目前其它技術(shù)存在的缺點,在抽油機智能控制系統(tǒng)中,人機對話界面與工控機由適配器連接;在工控機的輸入端由電纜連接著信號數(shù)據(jù)轉(zhuǎn)換器,其輸出端由電纜連接著數(shù)據(jù)信號轉(zhuǎn)換器;信號數(shù)據(jù)轉(zhuǎn)換器的輸入端通過電纜與流量信號采集傳感器和液位傳感器相連;數(shù)據(jù)信號轉(zhuǎn)換器的輸出端通過電纜與電機控制系統(tǒng)連接,電機控制系統(tǒng)與電機連接;在工控機內(nèi)裝有抽油機智能控制程序;該技術(shù)在不影響油產(chǎn)量的情況下可以及時有效地判斷井口是否出油,快速、有效地控制抽油機的啟停時間,使抽油機的停井時間最長,開井時間最短。
文檔編號E21B44/00GK1811623SQ20061001741
公開日2006年8月2日 申請日期2006年2月16日 優(yōu)先權(quán)日2006年2月16日
發(fā)明者杜辛欣 申請人:杜辛欣
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1