亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        以單片機為核心的線切割高頻電源設(shè)計

        2017-12-25 01:11:55陳莉
        電動工具 2017年6期
        關(guān)鍵詞:功率管控制程序數(shù)碼管

        陳莉

        ( 威海市技術(shù)學院,山東 威海 264210 )

        以單片機為核心的線切割高頻電源設(shè)計

        陳莉

        ( 威海市技術(shù)學院,山東 威海 264210 )

        采用STC89C52RC單片機對傳統(tǒng)的線切割機床高頻電源進行設(shè)計改造,并加以控制,改進后的電路簡單,控制靈活、操作方便,加工速度獲得較大幅度提升。

        線切割;脈沖信號;功能參數(shù);動態(tài)顯示;光耦;C語言

        0 引言

        傳統(tǒng)線切割機床的高頻電源信號,通常來源于由NE555組成的振蕩電路,或來源于單片機,某些線切割高頻電源信號更是采用兩片單片機。本文探討的電路以STC89C52RC產(chǎn)生高頻電源,并加以控制,促使電路簡單,控制靈活方便,加工速度較大幅度提升。

        1 原理分析

        本文所述線切割高頻電源的單片機控制電路原理如圖1所示。

        1.1 控制信號產(chǎn)生電路

        在單片機控制程序控制下產(chǎn)生的脈沖信號,由單片機P1.4、P1.5、P1.6輸出。輸出功率的大小由P1.4、P1.5、P1.6輸出情況和其脈沖寬度控制。在輸出功率較小時,P1.4端有脈沖輸出,P1.5、P1.6端無脈沖輸出,僅有1枚對應的功率輸出管工作;要求輸出功率增大,P1.5端有脈沖信號輸出對應控制2枚功率管工作;功率持續(xù)加大,則P1.6端輸出控制信號,對應控制3枚功率管工作。即:P1.4輸出,1枚功率管工作,P1.4、P1.5輸出,3枚功率管工作,P1.4、P1.5、P1.6同時輸出信號,則6枚功率管全部工作。

        1.2 功能參數(shù)顯示電路

        參數(shù)顯示電路由5枚LED數(shù)碼管組成,分別由單片機的P0口P2口輸出控制LED數(shù)碼管的段碼信號和位碼信號。

        參數(shù)顯示電路顯示,第一位顯示功率管的電源電壓,第二位和第三位用以顯示輸出脈沖寬度,第四位顯示脈間的時間長短,第五位顯示動率輸出管工作數(shù)量。電源電壓高低由電壓選擇開關(guān)選定;脈沖的寬度為九個等級,可通過選擇開關(guān)選定。脈間同樣具有九個等級,由脈間選擇開關(guān)選定。上述四個參數(shù)的初始值由系統(tǒng)自動設(shè)定為常用值。需改變時,操作者可通過相應的選擇開關(guān)自行設(shè)定。

        1.3 驅(qū)動電路

        驅(qū)動電路由三塊TLP250光耦合集成電路組成,TLP250的⑤腳接地,⑧腳接12 V電源。當TLP250光耦的③腳存在低電平脈沖信號時,其⑥、⑦腳輸出高電平脈沖,直接驅(qū)動功率場效應管IRFP450的柵極。其中IC2(TLP250)的輸出(⑥、⑦腳)控制VT1的柵極, IC3(TLP250)的輸出同時控制VT2和VT3的柵極,IC4(TLP250)的輸出同時控制VT4、VT5和VT6的柵極。由單片機P1.4、P1.5、P1.6端子輸出脈沖信號,分別加載至三塊TLP250光耦的③腳。

        1.4 功率輸出電路

        由VT1~VT6功率場效應管組成功率輸出電路,由單片機的P1.4、P1.5、P1.6端輸出的脈沖信號,通過光耦I(lǐng)C2、IC3、IC4驅(qū)動功率場效應管,以控制相應的功率管工作。

        圖1 線切割高頻電源的單片機控制電路原理

        2 程序分析

        單片機程序采用C語言編程。

        001 #include

        002 unsigned char display_code[16]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,

        003 0x6f,0x77,0x38,0x76,0x5e,0x79,0x71};

        004 unsigned char gong_neng[9]={0,11,40,0 x00,6,0,0x00,0,3};

        005 unsigned char i=1;

        006 unsigned char guan_shu;

        007 unsigned int data nai_kuan;

        008 void disptim()

        009 {unsigned char k;

        010 for (k=0;k<100;k++){;}

        011 }

        012 void display1 ()

        013 { p0=display_code [gong_neng[1]];

        014 p2=0x01;

        015 disptim();disptim();

        016 p0=display_code [gong_neng[2]/10];

        017 p2=0x02;

        018 disptim();disptim();

        019 p0=display_code [gong_neng[2]%10];

        020 p2=0x04;

        021 disptim();disptim();

        022 p0=display_code [gong_neng[4]];

        023 p2=0x08;

        024 disptim();disptim();

        025 p0=display_code [gong_neng[8]];

        026 p2=0x10;

        027 disptim();disptim();

        028 }

        029 void gongneng ()

        030 { unsigned char gongnengs;

        031 gongnengs=p1;

        032 gongnengs=~ gongnengs;

        033 gongnengs&=0x0f;

        034 if(gongnengs!=0x00)

        035 { disptim();

        036 p1=0xff;

        037 gongnengs=p1;

        038 gongnengs=~ gongnengs;

        039 gongnengs&=0x0f;

        040 if(gongnengs!=0x00)

        041 while(p1==0xff);

        042 switch(gongnengs)

        043 { case 1: { gong_neng[1]= gong_neng[1]

        +1;

        if(gong_neng[1]>12) gong_

        neng[1]=11;}; break;

        044 case 2: { gong_neng[2]= gong_neng[2]

        +10;

        if(gong_neng[2]>90) gong_

        neng[2]=10;}; break;

        045 case 4: { gong_neng[4]= gong_neng[4]

        +1;

        if(gong_neng[4]>9) gong_

        neng[4]=1;}; break;

        046 case 8: { gong_neng[8]= gong_neng[8]

        +1;

        if(gong_neng[8]>6) gong_

        neng[8]=1;}; break;

        047 }

        048 }

        049 mai_kuan=gong_neng[2];

        050 switch(gong_neng[8])

        051 { case 1:{casn_shu=0xef;}; break;

        052 case 2:{casn_shu=0xdf;}; break;

        053 case 3:{casn_shu=0xbf;}; break;

        054 case 4:{casn_shu=0xaf;}; break;

        055 case 5:{casn_shu=0x9f;}; break;

        056 case 6:{casn_shu=0x8f;}; break;

        057 }

        058 }

        059 void main ()

        060 { TMOD =0x15;

        061 TH1=(65536-10*221184/120000)/256;

        062 TL1=(65536-10*221184/120000)%256;

        063 ET1=1; EA=1; TR1=1;

        064 while(1)

        065 {gongneng (); display1();

        066 }}

        067 void time1() interrupt 3

        068 { switch(i)

        069 {case 1: { i=1; p1=guan_shu;

        070 switch(gong_neng[2]/10)

        071 { case 1:{ TH1=(65536-3*221184/

        120000)/256;

        072

        TL1=(65536-3*221184/

        120000)%256;}; break;

        073 case 2:{ TH1=(65536-10*221184/

        120000)/256;

        074

        TL1=(65536-10*221184/

        120000)%256;}; break;

        075 case 3:{ TH1=(65536-25*221184/

        120000)/256;

        076

        TL1=(65536-25*221184/

        120000)%256;}; break;

        077 case 4:{ TH1=(65536-30*221184/

        120000)/256;

        078

        TL1=(65536-30*221184/

        120000)%256;}; break;

        079 case 5:{ TH1=(65536-48*221184/

        120000)/256;

        080

        TL1=(65536-48*221184/

        120000)%256;}; break;

        081 case 6:{ TH1=(65536-65*221184/

        120000)/256;

        082

        TL1=(65536-65*221184/

        120000)%256;}; break;

        083 case 7:{ TH1=(65536-80*221184/

        120000)/256;

        084

        TL1=(65536-80*221184/

        120000)%256;}; break;

        085 case 8:{ TH1=(65536-95*221184/

        120000)/256;

        086

        TL1=(65536-95*221184/

        120000)%256;}; break;

        087 case 9:{ TH1=(65536-110*221184/

        120000)/256;

        088

        TL1=(65536-110*221184/

        120000)%256;}; break;

        089 } }; break;

        090 case 2: { i=1; p1=0xff;

        091 switch(gong_neng[4])

        092 { case 1:{ TH1=(65536-150*221184/

        120000)/256;

        093

        TL1=(65536-150*221184/

        120000)%256;}; break;

        094 case 2:{ TH1=(65536-160*221184/

        120000)/256;

        095

        TL1=(65536-160*221184/

        120000)%256;}; break;

        096 case 3:{ TH1=(65536-170*221184/

        120000)/256;

        097

        TL1=(65536-170*221184/

        120000)%256;}; break;

        098 case 4:{ TH1=(65536-180*221184/

        120000)/256;

        099

        TL1=(65536-180*221184/

        120000)%256;}; break;

        100 case 5:{ TH1=(65536-200*221184/

        120000)/256;

        101

        TL1=(65536-200*221184/

        120000)%256;}; break;

        102 case 6:{ TH1=(65536-230*221184/

        120000)/256;

        103

        TL1=(65536-230*221184/

        120000)%256;}; break;

        104 case 7:{ TH1=(65536-250*221184/

        120000)/256;

        105

        TL1=(65536-250*221184/

        120000)%256;}; break;

        106 case 8:{ TH1=(65536-270*221184/

        120000)/256;

        107

        TL1=(65536-270*221184/

        120000)%256;}; break;

        108 case 9:{ TH1=(65536-290*221184/

        120000)/256;

        109

        TL1=(65536-290*221184/

        120000)%256;}; break;

        110 } }; break;

        111 } }

        程序中,001為頭文件。002為七段數(shù)碼管功能參數(shù)顯示的段碼代碼。004為功能參數(shù)初始值。012~028為功能參數(shù)的顯示控制程序。P0口設(shè)置為七段數(shù)碼管段碼輸出端口,P2口設(shè)置為五個數(shù)碼管的位碼輸出端口。

        013~015為五位數(shù)碼管的第一位顯示控制程序,016~018為五位數(shù)碼管的第二位顯示控制程序,019~021為五位數(shù)碼管的第三位顯示控制程序,022~024為五位數(shù)碼管的第四位顯示控制程序,025~027為五位數(shù)碼管的第五位顯示控制程序。

        029~058為功能控制程序。其中,031~048為功能選擇按鈕的參數(shù)讀入程序,051為控制P1.4端子輸出脈沖信號,以控制一枚功率管VT1工作。052為控制P1.5端子輸出脈沖信號,以控制兩枚功率管VT2、VT3工作。053為控制P1.6端子輸出脈沖信號,以控制功率管VT4、VT5、VT6工作。054為控制P1.4、P1.6端子同時輸出脈沖信號,以控制四枚功率管同時工作。055為控制P1.5、P1.6端子同時輸出脈沖信號,以控制五枚功率管同時工作。056為控制P1.4、P1.5、P1.6三個端子同時輸出脈沖信號,以控制六枚功率管同時工作,此時輸出功率最大,切割速度最快。

        059~066為主程序。其中,060~063為定義定時器1的功能及模式。065為調(diào)用功能按鈕掃描程序和功能顯示程序。

        069為向P1端口相應端子(P1.4、P1.5、P1.6),輸出脈沖信號。070~089為根據(jù)脈沖寬度要求不同,確定輸出脈沖相應的寬度。090為P1端口輸出高電平(即脈間),091~110為根據(jù)脈間要求,以確定輸出脈間的時間長短。

        3 結(jié)語

        對傳統(tǒng)線切割機床的高頻電源采用MCU控制方式改造后,呈現(xiàn)電路簡單,故障減少,操作方便的優(yōu)點,同時促使加工速度得到了大幅提高,經(jīng)過近一年多時間的運行,工作穩(wěn)定,效率提高。

        [1]劉峰.電力電子技術(shù)[M].大連:大連理工大學出版社,2009.

        [2]朱永金.單片機應用技術(shù)(C語言)[M].北京:中國勞動社會保障出版社,2009.

        Design of High Frequency Power Supply for Wire Cutting with MCU as the Core

        Chen Li
        ( Weihai Technical College, Weihai 264210, Shandong )

        The design and transformation of the high frequency power supply of the traditional WEDM is carried out by using STC89C52RC single chip microcomputer while controlling is performed. The improved circuit is simple, flexible and easy to operate, which leads to the great improvement of the processing speed.

        Wire cutting; Pulse signal; Functional parameters; Dynamic display; Optocoupler; C language

        TM 341

        A

        1674-2796(2017)06-0021-04

        2017-08-07

        陳莉(1973—)女,大學本科,講師,主要從事機電一體化、電工電子技術(shù)專業(yè)的理論與實訓教學工作。

        猜你喜歡
        功率管控制程序數(shù)碼管
        基于GaN HEMT的L波段600W內(nèi)匹配功率管設(shè)計
        基于GaN HEMT的S波段小型化內(nèi)匹配功率管設(shè)計
        基于PLC的變電站備用電源自動投入裝置控制程序的研究
        Arduino編程
        電腦報(2019年2期)2019-09-10 07:22:44
        MC9S08FL16單片機數(shù)碼管靜態(tài)顯示分析
        科技風(2019年13期)2019-06-11 13:38:30
        單片機控制的四位數(shù)碼管動態(tài)顯示編程
        基于Qt的數(shù)碼管數(shù)字編碼系統(tǒng)的設(shè)計與實現(xiàn)
        交流調(diào)速控制器MOSFET 功率管選型與發(fā)熱分析
        L波段大功率放大組件的設(shè)計
        基于PLC數(shù)值處理模塊的PID控制程序研究
        日本在线中文字幕一区| 婷婷丁香五月中文字幕| 亚洲аv天堂无码| 青青草免费高清视频在线观看| 国产av一卡二卡日韩av| 欧美老妇多毛xxxxx极瑞视频| 国产熟妇搡bbbb搡bb七区| 亚洲国产福利成人一区二区| 日日噜噜噜夜夜狠狠久久蜜桃| 香港三级午夜理论三级| 色欲av亚洲一区无码少妇| 色播在线永久免费视频网站| 国产三级av在线精品| 99久久精品免费看国产| 老湿机香蕉久久久久久| A阿V天堂免费无码专区| 一区二区三区精品免费| 国内熟女啪啪自拍| 人人狠狠综合久久亚洲婷婷| 东京热人妻一区二区三区| 人人妻人人澡人人爽国产一区| 国产精品jizz视频| av中文字幕少妇人妻| 色偷偷亚洲精品一区二区| 亚洲中文字幕无码爆乳app| 无码精品a∨在线观看十八禁| 亚洲国产高清美女在线观看| 伊人久久大香线蕉av不变影院| 亚洲av久久久噜噜噜噜| 亚洲av无码专区亚洲av桃| 亚洲第一页综合av免费在线观看| 三级黄色片免费久久久| 国产涩涩视频在线观看| 人妻少妇一区二区三区| 日韩av水蜜桃一区二区三区| 狠狠躁日日躁夜夜躁2020| 91日本精品国产免| 色婷婷av一区二区三区不卡| 精品无码久久久久久久久| 人人妻人人澡人人爽曰本| 国产美女三级视频网站|