int K1=5 //把K1(正转)按钮连在数字端口5
int K2=6 //把K2(反转)按钮连在数字端口6
int K3=7 //把K3(停止)按钮连在数字端口7
int potpin = 3// 把电位计连在模拟端口3
int A=2 //数字端口2、3控制电机启停和转向
int B=3
int PWMpin = 9// 数字端口9输出PWM信号,控制电机转速
//初始化
void setup()
{
pinMode(K1,INPUT)//把数字端口5、6、7设置输入模式
pinMode(K2,INPUT)
pinMode(K2,INPUT)
pinMode(A,OUTPUT)//把数字端口2、3设置输入模式
pinMode(B,OUTPUT)
}
//主程序
void loop()
{
//如果按下K1(正转)按钮
if(digitalRead(K1)==LOW)
{
//电机正转
digitalWrite(A,HIGH)
digitalWrite(B,LOW)
}
//如果按下K2(反转)按钮
if(digitalRead(K2)==LOW)
{
//电机反转
digitalWrite(A,LOW)
digitalWrite(B,HIGH)
}
//如果按下K3(停止)按钮
if(digitalRead(K3)==LOW)
{
//电机停止
digitalWrite(A,LOW)
digitalWrite(B,LOW)
}
int sensorValue = analogRead(potpin)//读取电位计采样值
sensorValue = sensorValue/4// 采样值 0-1024 转换为 0-255
analogWrite(PWMpin, sensorValue)//把处理后的转换值以PWM信号形式输出
delay(20)//延时
该太阳能跟踪系统的工作状态有四种:
1. 常态(好天气情况)下的对日跟踪状态;
2. 间歇式跟踪。如一天当中有一段时间为多云或阴天或恶劣天气时,该系统将甄别为不适宜跟踪,整个系统便处于暂停状态。待光线和跟踪条件适宜时,系统会有一个快速跟踪指令,使跟踪仪大致对准太阳。之后,程序会进行另一组信号采集处理,完成精细跟踪;
3. 自动回位。日落后,系统会自动进入休眠状态,并自动回归到太阳升起的方位。第二天再自动进入新一轮的运转。
4. 恶劣天气状态的保护:当环境风速或降水等因素不适宜系统工作时,跟踪仪会自动停止工作,并使整个大系统的受光面与地平面成平行状态或垂直状态,以避免系统遭到破坏。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)