我雕刻機的主軸電機48V 300W直接接通電源也是出現問題,后來我用STC89C52RC單片機寫個占空比逐漸變大的軟起動程序就完美解決了,后來發現采用僅有8腳的STC15F104W單片機更方便,啟動時間改變程序中的T值就可以了!- #include<reg52.h>
- #define uchar unsigned char
- #define uint unsigned int
- sbit pwm=P2^0;//輸出啟動信號,本人建議單片機驅動光耦,光耦驅動MOS
- sbit close=P3^2;//停止按鍵
- sbit start=P3^3;//啟動按鍵
- void delay(int i)//延時
- {
- while(i--);
- }
- void DC_motor()//占空比循環疊加
- {
- uint T=500,N=0;//啟動時間改變T(0-65535)
- for(N=1;N<T;N++)
- {
- pwm=0;
- delay(N);
- pwm=1;
- delay(T-N);
- }
- }
- void main()
- {
- while(1)
- {
- if(start==0)//判斷啟動按鍵按下
- {
- delay(100);//延時消抖
- if(start==0)//再次確認啟動按鍵按下
- {
- DC_motor();//占空比循環疊加
- pwm=0;//全速
- }
- while(!start);
- }
- if(close==0)//判斷停止按鍵按下
- {
- delay(100);//延時消抖
- if(close==0)//再次確認停止按鍵按下
- {
- pwm=1;//停止
- }
- while(!start);
- }
- }
- }
復制代碼
|