历史上的今天
今天是:2024年10月15日(星期二)
2020年10月15日 | 基于GSM的超远程水泵控制系统电路设计
2020-10-15 来源:elecfans
针对传统远程控制器存在控制距离短、易受障碍物干扰、无反馈信息等问题,设计了一种基于GSM技术的超远程水泵控制系统。该系统是基于时分多址技术的GSM短信业务,以ARM处理器和GSM通信模块为核心,采用标准AT指令和串口通信以PDU短信的格式实现对水泵运转、水管上水、水塔液位高度的控制和反馈。实际应用表明,该系统工作稳定,实用性强。
该系统的信号接收端主要由ARM处理器、TC35i通信模块、信号采集继电器模块、控制继电器模块、靶式流量开关、液位传感器、液位开关、液晶显示组成。 ARM处理器与TC35i通信模块通过串口通信,其结构如图1所示。其中,信号采集继电器模块采用12V的继电器采集信号,提高了采集信号的抗干扰能力;控制继电器模块由光电耦合器、12V继电器、24V中间继电器组成,控制信号经过光电隔离和放大,有效防止了水泵的误动作,控制继电器模块 发出的控制信号为标准的DC24V和AC220V,可以控制水泵动力箱的交流接触器,实现水泵的启动和停止;液位传感器采集的液位信号经过ARM处理器显示在12864液晶上,同时也可供液位查询使用。
该设备的信号发送器主要由ARM处理器、TC35i通信模块、按键、指示灯、12864液晶组成,其结构如图2所示。当水泵已启动时,对应的电机指示灯会亮;当水管已经抽上水时,上水指示灯会亮;当按下液位查询按键时,液晶就会显示此次液位查询的结果。
STM32最小系统原理图如图所示。

STM32主电路

STM32外部晶振电路

STM32 RTC晶振电路

STM32 复位电路
STM32电源电路设计
该设备的信号接收端由蓄电池供电,供电原理图如图所示。蓄电池的额定输出电压为36V,蓄电池经过电源转换模块产生5V、12V、24V的恒压,分别供ARM处理器、TC35i通信模块、信号采集继电器模块和控制继电器模块使用。电源转换模块采用LM2596电流输出降压开关型集成稳压芯片,宽电压输入,大电流输出,自动升降压,为控制器各模块的工作提供稳定的电源保证。该设备的信号发送端由4节5号干电池供电,经过LM7805稳压芯片产生5V恒压供各个模块和指示灯使用。
STM32电源电路如图7所示。

图7 STM32电源电路
MAX232串口通信电路
MAX232串口通信电路如图8所示。

图8 串口通信电路
12864液晶显示电路图
12864液晶显示电路如图9所示。

图9 液晶显示电路
按键电路
按键电路如图10所示。

图10 按键与处理器的连接示意图
控制信号驱动电路
如图11所示,驱动电路选用光耦芯片AQW214来进行光电隔离路[7],当处理器的管脚为高电平[8]时,光耦没有输出,继电器不动作;当处理器的管脚为低电平时,光耦有输出,继电器动作,并且在继电器的线圈两端加了发光二极管和续流二极管,当继电器动作时发光二极管被点亮,使继电器的输出更直观、更稳定。

图11 驱动电路
针对传统远程控制器存在控制距离短、控制信号不稳定、易受障碍物干扰等问题,将基于时分多址技术的GSM短信传输技术应用于海产养殖产业中,开发出了一种基于GSM技术的超远程水泵控制系统。该系统具有以下优点:控制距离远,不受障碍物干扰,传输信号稳定,安装方便,操作简单。该装置在实际应用时,控制信号和反馈信号传输及时准确,但在操作方便性和系统灵活性等方面还需进一步完善。
上一篇:ucgui界面设计&实体按键驱动
史海拾趣
|
1)高频三极管V1和电容C3、C5、C6组成一个电容三点式的振荡器 2)C4、L组成一个谐振器:谐振频率就是调频话筒的发射频率,根据图中元件的参数发射频率可以在88~108MHZ之间,正好覆盖调频收音机的接收频率,通过调整L的数值(拉伸或者压缩线 ...… 查看全部问答> |
|
写一个用RAS拨号连接的程序,连接成功了,但是中间状态显示有问题, LRESULT CGPRSDlg::WindowProc(UINT mesaage,WPARAM wParam,LPARAM lParam) { if (mesaage==WM_RASDIALEVENT) {   ...… 查看全部问答> |
|
对ADS不是很熟悉,以前用Keil的时候可以软件仿真直接查看设定频率下延时函数的延时时间,但不知道ADS下是怎么看的,比如主频是60M,那下面这段延时函数的延时时间是多少呢?太菜了,还问这么低级的问题。取t=1情况计算。谢谢了!ARM7内核 void Del ...… 查看全部问答> |
|
我在驱动里面hook了NTSTATUS NtTerminateProcess( IN HANDLE ProcessHandle OPTIONAL, IN NTSTATUS ExitStatus)这个函数 我用下面代码能够打印出来进程名, char output[15]; ResultStatus = ObReferenceObjectBy ...… 查看全部问答> |
|
为更丰富本次DIY数控电源的活动,又恰逢站方推出430铁电实验板的团购,为让更多的网友能够参与到本次活动中,现征集DIY数控实验电源的显示面板设计,本面板独立于电源本身,只是一个显示操控装置,与电源板通过串口互联,用协议和指令控制电源板的 ...… 查看全部问答> |
|
013 8050 8550三极管作开关用时频率可达到多大0分 如题,我要用单片机io产生的pwm控制一个大功率led的亮度,用三极管做一个简单的驱动电路,大家有什么好建议… 查看全部问答> |




