久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

標題: 氬弧焊機脈沖控制器制作 附單片機程序PCB [打印本頁]

作者: yunhai4321    時間: 2021-3-23 09:18
標題: 氬弧焊機脈沖控制器制作 附單片機程序PCB
沒事看網上有氬弧焊機脈沖控制器自己做了一個,用單面PCB加跳線,感光法做的PCB板,雙面板業(yè)余條件過孔太難搞了,用了2個4位共陽極數碼管,一個顯示高電平時間ms,一個顯示低電平時間ms,沒有搞儲存幾組數據,為了操作簡單只儲存上一次的設置,5個按鍵,一個儲存鍵,另外4個調整脈沖高電平時間,與低電平時間,STC89C51控制

制作出來的實物圖如下:

描述


測波形


試焊

Altium Designer畫的PCB圖在最后:(51hei附件中可下載工程文件)

單片機源程序如下:
  1. /*********************************************************************************
  2. * 【編寫時間】: 2021年3月12日
  3. * 【作    者】: 程云海
  4. * 【版    本】: 1.0
  5. * 【外部晶振】: 12mhz        
  6. * 【主控芯片】: STC89C52RC
  7. * 【編譯環(huán)境】: Keil μVisio4        
  8. * 【程序功能】: 脈沖輸出控制                                                                                          
  9. * 【使用說明】: 1.使用數碼管顯示控制氬弧焊機脈沖輸出
  10. /*------------------------------------------------
  11.                     主函數
  12. ------------------------------------------------*/
  13. void main (void)
  14. {  a=byte_read(0x2000)*100+byte_read(0x2001);//程序開始時讀取EEPROM中數據
  15.    b=byte_read(0x2002)*100+byte_read(0x2003);//程序開始時讀取EEPROM中數據  
  16.          //SectorErase(0x2000);//擦除扇區(qū)
  17.      //byte_write(0x2000,a);//重新寫入數據

  18.    t0_init();  //定時1ms一個中斷
  19.    
  20. while (1)             //主循環(huán)
  21. {        smgxshi( a, b);           //數碼管顯示函數
  22.          anjian();                   //按鍵調整函數
  23.          chucun();                   //儲存函數
  24.         shuchmch();        //輸出脈沖函數
  25.         
  26. }




  27. }



  28. void smgxshi(uint a,uint b)//數碼管顯示函數
  29. { uint c1; uchar c2;
  30.    a1=a/1000;
  31.    c1=a%1000;
  32.    a2=c1/100;
  33.    c2=c1%100;
  34.    a3=c2/10;
  35.    a4=c2%10;
  36.    b1=b/1000;
  37.    c1=b%1000;
  38.    b2=c1/100;
  39.    c2=c1%100;
  40.    b3=c2/10;
  41.    b4=c2%10;

  42.    
  43.    D=d[a1];
  44.    W=0x7f;
  45.    DelayMs(1);
  46.    D=0xff;
  47.    DelayMs(1);

  48.    D=d[a2];
  49.    W=0xbf;
  50.    DelayMs(1);
  51.    D=0xff;
  52.    DelayMs(1);

  53.    D=d[a3];
  54.    W=0xdf;
  55.    DelayMs(1);
  56.    D=0xff;
  57.    DelayMs(1);

  58.    D=d[a4];
  59.    W=0xef;
  60.    DelayMs(1);
  61.    D=0xff;
  62.    DelayMs(1);

  63.    D=d[b1];
  64.    W=0xf7;
  65.    DelayMs(1);
  66.    D=0xff;
  67.    DelayMs(1);

  68.    D=d[b2];
  69.    W=0xfb;
  70.    DelayMs(1);
  71.    D=0xff;
  72.    DelayMs(1);

  73.    D=d[b3];
  74.    W=0xfd;
  75.    DelayMs(1);
  76.    D=0xff;
  77.    DelayMs(1);

  78.    D=d[b4];
  79.    W=0xfe;
  80.    DelayMs(1);
  81.    D=0xff;
  82.    DelayMs(1);   }        


  83.   void anjian(void)                //按鍵調整函數
  84. {  if(an1==0)                                         //        按鍵1是否按下
  85.   {smgxshi(a,b);       //數碼管顯示函數延時
  86.    if(an1==0)                                         //        按鍵1是否按下
  87.    smgxshi(a, b);       //數碼管顯示函數延時
  88.    while(!an1)                                         //按鍵有沒有松開
  89.    {smgxshi( a, b);       //數碼管顯示函數延時
  90.    a++;           
  91.    if(a==1001)
  92.    a=0;
  93.    smgxshi( a, b);       //數碼管顯示函數延時
  94.    } }
  95.                            
  96.   if(an2==0)                                         //        按鍵1是否按下
  97.   {smgxshi(a,b);       //數碼管顯示函數延時
  98.    if(an2==0)                                         //        按鍵1是否按下
  99.    smgxshi(a, b);       //數碼管顯示函數延時
  100.    while(!an2)                                         //按鍵有沒有松開
  101.    {smgxshi( a, b);       //數碼管顯示函數延時
  102.    a--;           
  103.    if(a==-1)
  104.    a=1000;
  105.    smgxshi( a, b);       //數碼管顯示函數延時
  106.    } }                           
  107.                            
  108.   if(an3==0)                                         //        按鍵1是否按下
  109.   {smgxshi(a,b);       //數碼管顯示函數延時
  110.    if(an3==0)                                         //        按鍵1是否按下
  111.    smgxshi(a, b);       //數碼管顯示函數延時
  112.    while(!an3)                                         //按鍵有沒有松開
  113.    {smgxshi( a, b);       //數碼管顯示函數延時
  114.    b++;           
  115.    if(b==5001)
  116.    b=0;
  117.    smgxshi( a, b);       //數碼管顯示函數延時
  118.    } }                                                      
  119.                            
  120.    if(an4==0)                                         //        按鍵1是否按下
  121.   {smgxshi(a,b);       //數碼管顯示函數延時
  122.    if(an4==0)                                         //        按鍵1是否按下
  123.    smgxshi(a, b);       //數碼管顯示函數延時
  124.    while(!an4)                                         //按鍵有沒有松開
  125.    {smgxshi( a, b);       //數碼管顯示函數延時
  126.    b--;           
  127.    if(b==-1)
  128.    b=5000;
  129.    smgxshi( a, b);       //數碼管顯示函數延時
  130.    } }                                                                                 
  131.                             }

  132. void shuchmch(void)  //輸出脈沖函數
  133. { if(ru==0)                                         //        按鍵1是否按下
  134.   {smgxshi(a,b);       //數碼管顯示函數延時
  135.    if(ru==0)                                         //        按鍵1是否按下
  136.    smgxshi(a, b);       //數碼管顯示函數延時
  137.    TR0=1;      //啟動定時器0
  138.    while(!ru)                                         //按鍵有沒有松開
  139.    smgxshi( a, b);       //數碼管顯示函數延時
  140.            chu=1;
  141.         aa=0;
  142.         TR0=0;      //關閉定時器0
  143.         smgxshi( a, b);       //數碼管顯示函數延時
  144.     }                                                                                 
  145. }

  146. void chucun(void)  //儲存函數
  147. {  if(an5==0)                                         //        按鍵1是否按下
  148.   {smgxshi( a, b);       //數碼管顯示函數延時
  149.    if(an5==0)                                         //        按鍵1是否按下
  150. ……………………

  151. …………限于本文篇幅 余下代碼請從51黑下載附件…………
復制代碼

51hei圖片_20210323085252.jpg (1.15 MB, 下載次數: 173)

PCB圖

PCB圖

51hei圖片_20210323085224.jpg (96.02 KB, 下載次數: 159)

打印的菲林

打印的菲林

51hei圖片_20210323085217.jpg (133.55 KB, 下載次數: 142)

PCB

PCB

51hei.png (3.33 KB, 下載次數: 155)

51hei.png

氬弧焊機控制板.rar

13.91 KB, 下載次數: 104, 下載積分: 黑幣 -5

PCB與程序


作者: cooleaf    時間: 2021-3-28 11:59
脈沖最后驅動是個啥?是個升壓變壓器嗎?
作者: YTWO    時間: 2021-4-9 14:02
你太厲害了,真牛
作者: fj51hei    時間: 2021-4-9 19:32
樓主:焊機  ---  氬弧焊  ---  冷焊機   這三者的區(qū)別?
作者: lyong88    時間: 2021-7-27 10:45
樓主,這PCB的元器件可以給個清單嗎?
作者: rrqxx    時間: 2021-8-24 22:48
樓主,Proteus仿真不了啊?數碼管顯示不正常,求解!
作者: 青春的心    時間: 2021-9-11 15:21
樓主動手能力真厲害
作者: a185980800    時間: 2021-9-23 15:07
我早的時候也做過,記得焊機起弧時有個10khz左右的高頻干擾,偶爾會影響單片機工作。后來考慮在焊把開關輸入io口加共模電感。還一直沒試。請教樓主有碰到這情況沒,是怎么解決的?
作者: a185980800    時間: 2021-9-23 16:40
補充一下,當時是手動單點的時候是可以正常工作的,我做了按著不放進入連點模式,連續(xù)點焊時焊機連續(xù)引弧有時程序就亂跑了。
作者: long2018    時間: 2021-12-23 16:04

樓主動手能力真厲害
作者: xlhlydd    時間: 2023-8-14 22:58
樓主這程序用keil4 編譯不成啊 我這軟件好長時間沒用了 難道壞了 ,哪位大俠看看什么原因造成的。先謝了。問題已經解決了
作者: xlhlydd    時間: 2023-10-6 22:28
樓主的這板子已裝成調試好,就是還未到機器上試,
作者: 傲世飛魚    時間: 2023-10-8 15:17
xlhlydd 發(fā)表于 2023-10-6 22:28
樓主的這板子已裝成調試好,就是還未到機器上試,

測試一下試試
作者: 傲世飛魚    時間: 2023-10-8 15:18
求分享原理圖
作者: xlhlydd    時間: 2023-10-9 22:00
傲世飛魚 發(fā)表于 2023-10-8 15:17
測試一下試試

正在焊接高低壓電源板,還有一塊開關功率調制板,都弄好了才能拼成整個的在整調。
作者: tyrl800    時間: 2023-11-14 13:01
請問樓主 ,高頻起弧時對單片機工作有影響嗎?




歡迎光臨 (http://m.zg4o1577.cn/bbs/) Powered by Discuz! X3.1
主站蜘蛛池模板: 久久国产精品免费视频 | 国产黄色av | 在线看片你懂的 | 日本在线看 | 久久这里都是精品 | 国产黄色三级 | 国产精品免费人成网站酒店 | 精品日韩一区二区三区 | 国产三级在线看 | 8x8ⅹ国产精品一区二区 | 国产51自产区| 欧美一级二级三级 | 日韩免费成人 | 久久精品视频一区二区 | 黄色成人免费视频 | 亚洲精品不卡 | 免费成人毛片 | 久久九九免费视频 | 精产国产伦理一二三区 | www.com黄| 欧美视频一区二区 | 欧美一区二区在线 | 在线观看国产小视频 | 91亚洲一区 | 亚洲色欲色欲www在线观看 | 国产精品视频免费在线观看 | 成人免费在线观看 | 日韩手机看片 | 日韩在线网址 | 香蕉视频在线播放 | 他揉捏她两乳不停呻吟动态图 | 久久久网| 日韩伦理在线播放 | 一区二区免费在线观看 | 日韩视频中文字幕 | 亚洲午夜视频 | 在线看黄色片 | a在线播放 | 国产黄色三级 | 婷婷在线视频 | 国产精品免费在线播放 |