
系统设计目标$ `2 b ]# }% T; j( R 本系统可以分为两个模式来进行运行,分别为手动模式和自动模式,同时,在上电进入系统后,还会有一个模式选择的界面产生。- S% S4 p d; B+ q" y 1.模式选择:在此界面中,可以通过按键K1来控制模式选择,两个模式分别为手动模式和自动模式;通过按键K2可以进入模式 2.手动模式:在手动模式中,可以通过K1来进行速度调整,分为低速、中速和高速,可以通过K3来控制是否为摇头状态。8 T X% O6 S. m0 [8 u 3.自动模式:在自动模式下,可以通过红外传感器来检测周围是否有人,通过温湿度传感器来测试周围环境温度和湿度,若达到条件就会触发风扇进行运转,风速也有低速模式、中速模式、高速模式。 具体的硬件选型 1.主控芯片, V/ @$ Y' j1 M% X+ C8 X( S 主控芯片选择的是stm32f103c8t6最小系统板,价格便宜,非常适合新手进行单片机项目的开发,可以配合面包板来使用,很适合电路连接。& L+ K; J6 z% T: `! s. \! O- v ![]() 9 a9 @5 T6 u8 w5 a. X, | 7 M1 T$ S" f; s3 Q$ i; u) c( Y1 T8 E) E; H 2.显示模块 显示模块主要是使用0.96英寸OLED屏幕。通过OLED模块来显示模式信息、温度信息、扫风信息等内容。 . ]; h m" P/ _ ![]() 4 R4 Y, r& V* k- A4 x9 i 3.温湿度传感器% F* @* z1 y4 G1 @) n* w* W. R 温湿度传感器使用的是DHT11温湿度传感器,用来在自动模式下来采集温度数据和湿度数据,控制风扇的转速。3 C; P9 I1 p& H5 s9 m& d- w. q' s ![]() / ^. U% F6 ~$ ?2 w. i1 ^8 G8 y, Q 4.红外模块 1 y0 s3 L4 A ] 红外模块主要是用来检测周围是否有人存在,在检测到周围有人存在的时候,就可以将信息传递给单片机来进行响应,当温度达到设定值时,可以控制风扇开始转动。 $ n5 D# v2 x' ]. m' t" N% ^" ] ![]() 3 ?% q- Z5 f7 r1 \* @ 5.电机驱动电路# i* h8 u J0 n # y" U# s6 X( h% @- r' U 我的电机驱动电路是使用的大功率二极管来进行驱动电机的,其实也可以用L298N来进行驱动,这个就根据个人手头上的元件来决定。 $ N+ s9 ]. V& f 6.舵机 8 Q7 v& h7 D6 c 风扇的扫风模式我主要是使用舵机来完成的,通过控制舵机的占空比来实现风扇的扫风。/ G# q0 s" h) V 7.电机$ x5 J7 |7 N3 {' F; o* m3 S 这次的电机我使用的是空心杯这个小电机。+ ?$ B6 Z( A5 v) ], Y" y3 I V$ d0 Z 具体的软件思路6 v/ e5 o7 V0 P5 T9 B 模式选择界面 在选择模式下可以通过按键来切换模式,并通过按键进入模式,其中使用K1按键来进行模式的选择,分为自动模式和手动模式;通过K2进入所选择的模式。 ' h9 x w# ?+ R: j. m ![]() " K1 E& r3 R7 ^- ~- ? 2.手动模式3 Y8 B4 Q$ r3 Z3 r" q 在手动模式下,通过按键来控制风扇的转动和扫风模式以及退出到选择界面的功能。在手动模式中,按下K1键来进行风扇的加速,分为低速模式—>中速模式—>高速模式—>停止。通过K3来控制扫风,当按下一次K3后,会进入扫风模式,风扇扫风,再次按下K3,停止扫风。按下K4后,会退出手动模式进入模式选择界面。( ?0 I1 c/ d+ e4 L4 q0 f1 | ; Y* D; r9 x! L3 |5 g) [; S " x3 A3 S {5 s+ V g* T# { ![]() ) |* d- e9 e2 k% O2 q) p7 j7 y! I3 B 3.自动模式" m, z( V0 K1 G5 U 6 l& _7 }) ]' r3 i. q 在自动模式下,系统会自动检测周围环境并决定是否进入扫风模式和使风扇转动。 ' P* f8 O; s! P; o" z8 M4 | 首先会检测前方是否有人,若没有人,无事发生;若有人,进入2。* u1 d2 F6 g; J) m. c 若前方有人,会检测左侧是否有人,若无人且环境温度大于27度,风扇转动但不扫风;若有人,进入3。9 c" @ _ _# | 若左侧有人,会检测右侧是否有人,若无人且环境温度大于27度,风扇转动且左半边扫风;若有人,且环境温度大于27度,风扇转动且0度到180度扫风。 若环境温度在27度到29度之间,风扇转速为低速模式,若环境温度在29度到31度之间,风扇转速为中速模式,若环境温度在31度以上,风扇转速为高速模式。 7 a& v# J$ u) J2 p' F ![]() : a/ T1 x- E; ^8 y5 C7 b: G W+ ] / t- K) x" v! B, w$ b 元件的连接 ![]() 注:如果要实现自动模式的效果,要在舵机的桨上将电机和红外模块粘上,这样才能更好地实现自动模式中所期望的效果。 ———————————————— 版权转载自:嵌入式进阶之路3 N' u+ ?% ~& {$ ~3 F' ~: K |