便携气泵 ESP32 CS1237 Nokia_5110
简介
Copy:淘宝20元的充气泵主体,带的传感器是DSH700,数模模块是CS1237,通过esp32读取气压值进行充气控制 Nokia_5110显示
简介:Copy:淘宝20元的充气泵主体,带的传感器是DSH700,数模模块是CS1237,通过esp32读取气压值进行充气控制 Nokia_5110显示开源协议
:Public Domain
描述
说在前面
简介复制由:CS1237充气气泵ESP32控制板[已验证] - 嘉立创EDA开源硬件平台 (oshwhub.com)
我没找到哪个传感器型号,找个差不多的,代码里的传感器型号是错误的。
继续前请确认
1.开源的电路、程序、模型都不完善,我也不想更新了,需要自己改进,所以你需要一定的动手能力才能复制项目,如果不会软件上修改,你可能需要修修补补~
2.电路问题:缺少3个下拉电阻,分别为Powerkey上拉电阻,10K,接io口与3.3V;电机的驱动mos,10k,接门极与地;LED的驱动MOS,10K,接门极与地。(不知道当时怎么想的没有下拉。)按键封装与实际使用不一样,最开始想用金属贴片按键,家里没有了,用的塑料的那种还省着做按键帽了,剪掉引脚,贴片焊接。
3.软件问题:CS1237读取有BUG,问题在最后一位是0的话,没有做中断获取Ready导致芯片忙时读取错误,目前是硬延时,开机前2秒读数错误。LED的开关按键我随便找了个io口焊接的,可以使用io0,修改定义即可。
4.外壳问题:LED开关按键固定有问题,安装不进去,我是把按键弄掉一些,用胶粘住的。USB口,所有的按键开窗都小,可能要打磨大一点。固定电机的两个螺丝孔凸台有点矮。
5.气泵本身缺陷:我怀疑是这个气泵没有组装就流入垃圾市场的原因。传感器距离泵出口太近了,刚压缩的高温气体温度很容易进入测量空腔,导致传感器温度上升,测量出现误差。我在进去空腔的通道里放点硅胶管,减小通道截面积,降低温度传导,不知道有没有用。
需求
硬件:
气泵,ESP32(我用的SOLO,电子垃圾里拆出的),LED小灯条,18650电池2节,2S锂电池保护板(大电流的),2S锂电池充电板,2节18650电池盒子,PD诱骗板(9V,依依据充电板来),Nika5110显示屏(后悔用这个了,那个蛋疼的导电条,有能力换128*64的其他屏幕吧),M2.5自攻螺丝,硅胶管(胶皮片也行,减震用),其他电子零件。外壳是3D打印的,我用的是PETG墨绿色。usb转串口ttl,下载程序。
软件
VScode+esp-idf,嘉立创EDA专业版,solidwork.
原理图设计说明
MOS不用必须是原理图的型号(去年年初设计的,忘记选型对不对了),两个都必须是15A以上的MOS就行。
实物展示说明
LED开关按键用的下图的这个大的。条线焊接到电路板上。
3D打印一共两个部件,内心和外壳,树立打印,内心不需要支撑,外壳屏幕那个位置需要支撑,我用的树状支撑,瘦树。
我是利用大气压校准的压力,手机和手表获知当前压力,过一天读一次,写代码那两天正好天气变化比较大,第一天102KPa,第二天104kPa,第三天106kPa,都是大约值。有个叫手机物理工坊的APP不错,很有用,比如通过电机低速的叫嚣声音可以知道PWM的频率等。我用我自己的自行车打气到50PSI用带气压表的打气筒量测挺准的。如果有其他校准方式更好。没有做温度压力补偿啥的。温度就是CS1237的,也是看家里温度计校准的,不一定精准。如果要看日志,在menuconfig里修改log到info。
操作说明:
长按M键开机,长按M键关机。
单击M键启动/停止。单击LED开关键开关灯。
未启动状态下,+-单击切换预设。★是用户自定义,退出set模式时保存设定(包括单位),关机记忆。其他不保存。
双击M键进入set模式,通过+-调节设定值。再次双击退出。
三击M键切换单位,kPa,PSI,Bar循环。
启动模式后自动进去set模式。
达到设定自动停止。
装配细节
代码
electric_pump: electric_pump witg esp32 on esp-idf (gitee.com)
成本
ESP32 10元+元件5元+电线5元,打印成本10元~15元,没细算,其他在下面。其实也不低。
外壳
附件
评论