各位大師,能幫忙改改一下這個程序嗎?
要求:出膠后,電機旋轉180度,毛刷下降保持,然后電機來回45度往復旋轉
- #include "Oiling_Tooling.Arduino.h"
- void System_Init()
- {
- digitalWrite( Starting_switch_Pin , HIGH );
- digitalWrite( Interrupt_switch_Pin , HIGH );
- digitalWrite( Oil_injection_Pin , LOW );
- digitalWrite( Brush_Pin , LOW );
- digitalWrite( Electric_machinery_Pin , LOW );
- digitalWrite( Downward_pressure_Pin , LOW );
- pinMode( Starting_switch_Pin , INPUT);
- pinMode( Interrupt_switch_Pin , INPUT);
- pinMode( Oil_injection_Pin , OUTPUT);
- pinMode( Brush_Pin , OUTPUT);
- pinMode( Electric_machinery_Pin , OUTPUT);
- pinMode( Downward_pressure_Pin , OUTPUT);
- }
- #ifndef _Oiling_Tooling_Arduino_H_
- #define _Oiling_Tooling_Arduino_H_
- #include <Arduino.h>
- /*****************************************
- 定義引腳
- *****************************************/
- #define Starting_switch_Pin 13 //啟動開關
- #define Interrupt_switch_Pin 2 //中斷開關
- #define Electric_machinery_Pin 5 //驅動電機
- #define Downward_pressure_Pin 6 //驅動注油針下壓
- #define Oil_injection_Pin 3 //注油
- #define Brush_Pin 4 //毛刷
- extern void System_Init();//初始化
- #endif
- #include "Oiling_Tooling.Arduino.h"
- int Electric_machinery_value=3000; //電機運行值
- int Downward_pressure_time=200; //驅動注油針下壓時間
- int Oil_injection_time=500; //注油時間
- int Brush_time=500; //毛刷動作時間
- void setup()
- {
- System_Init();
- }
- void loop()
- {
- if(digitalRead(Starting_switch_Pin)==LOW)
- {
- delay(50);
- if(digitalRead(Starting_switch_Pin)==LOW)
- {
- if(digitalRead(Interrupt_switch_Pin)==HIGH)
- {
- digitalWrite( Oil_injection_Pin , HIGH );
- digitalWrite( Brush_Pin , LOW );
- digitalWrite( Electric_machinery_Pin , LOW );
- digitalWrite( Downward_pressure_Pin , LOW );
- delay( 100);
- digitalWrite( Brush_Pin , HIGH ); //毛刷到位
- digitalWrite( Downward_pressure_Pin , HIGH );//注油針下壓
- delay( Downward_pressure_time······ );
- digitalWrite( Oil_injection_Pin , HIGH );//開始注油
- delay( Oil_injection_time );
- digitalWrite( Oil_injection_Pin , LOW ); //結束注油
- delay( Brush_time);//防止油漏出
- digitalWrite( Downward_pressure_Pin , LOW ); //注油針上升
- delay(200);
- for(int i=0;i<Electric_machinery_value;i++) //電機動作
- {
- digitalWrite( Electric_machinery_Pin , HIGH );
- delay(1);
- digitalWrite( Electric_machinery_Pin , LOW );
- delay(1);
- if(digitalRead(Interrupt_switch_Pin)==LOW)
- {
- delay( 50 );
- if(digitalRead(Interrupt_switch_Pin)==LOW)
- {
- digitalWrite( Starting_switch_Pin , HIGH );
- digitalWrite( Interrupt_switch_Pin , HIGH );
- digitalWrite( Oil_injection_Pin , LOW );
- digitalWrite( Brush_Pin , LOW );
- digitalWrite( Electric_machinery_Pin , LOW );
- return;
- }
- }
- }
- digitalWrite( Brush_Pin , LOW );//毛刷上升
- }
- }
- while(digitalRead(Starting_switch_Pin)==LOW)
- {
- }
- }
- }
復制代碼
|