1.1 ATmega8单片机
这里选择性价比较高的ATmega8单片机为控制核心,ATmega8是一款具有RISC结构的高性能、低功耗的8位AVR微处理器。它具有130条指令(大多数指令执行时间为单个时钟周期),3个定时器,3通道PWM,10位A/D转换器,2个可编程的串行USART,SPI串行接口,I2C接口等功能模块。该太阳跟踪器可采用单片机内部的A/D采样、PWM通道、I2C接口等功能模块,从而简化程序编程。
1.2 光电检测模块
利用光敏电阻在光照时阻值发生变化的原理,将4只完全相同的光敏电阻分别放置于太阳光接收器的东南西北方向,负责侦测这4个方向的光源强度。如果太阳光垂直照射太阳能电池板,东西(南北)2只光敏电阻接收到的光照强度相同。其阻值完全相等,此时电动机不转动。当太阳光方向与电池板的法线有夹角时,接收光强多的光敏电阻阻值减小,信号采集电路采集到光敏电阻的信号差值,控制电路将其差值转换成控制信号,驱动电动机转动,直至2只光敏电阻上的光照强度相同。
图2是光电检测模块的俯视简图,共由5只光敏电阻组成。正中央1只,旁边4只围成一圈。左右2只光敏电阻(A、B)检测太阳方位角的变化,上下2只(C、D)检测太阳高度角的变化。中间1只用于检测环境亮度判断白天还是晚上,晴天还是阴天。图3是5路光敏电阻与ATmega8的连接电路,电源电压经光敏电阻和定值电阻的分压后送入ADCx引脚。
1.3 实时时钟模块
由于系统需进行时间控制,因此,需采用实时时钟。若使用单片机计时,长时间会引起较大误差,因此使用串行实时时钟PCF8583。该器件具有实时时钟,可提供秒、分、时、日、星期、月和年(闰年补偿),可采用12 h或24 h方式计时。它具有日历时钟、计时、可编程定时中断,并提供256字节低功耗静态RAM。采用I2C总线串行数据线,可方便与单片机接口。采用双电源(主电源和备用电源)供电。PCF8583与ATmega8通过I2C总线连接,其连接电路如图4所示。
1.4 步进电机及驱动器
该太阳跟踪器选用57BYG系列二相/四相混合式步进电机,步距角为1.8°,要满足高精度跟踪要求,必须提高电机步进角度的分辨率,因此选用TS-220系列高性能步进电机细分驱动器作为控制电路。驱动器选用原装驱动模块,纯正弦波电流细分控制方式,具有很强的抗干扰能力。控制信号与内部线路实现光电隔离,并具有精度高,可靠性好,电机噪音极低等特点。