1. 草莓视频黄在线观看,草莓视频APP在线,草莓视频下载色版,草莓污污在线观看

      草莓视频黄在线观看工业草莓视频APP在线厂家专业生产工业草莓视频APP在线,家用草莓视频APP在线,商用草莓视频APP在线等产品,欢迎来电咨询定制。 公司简介 | 研发团队 | 网站地图 | xml地图
      草莓视频黄在线观看-精芯除湿·致净生活环境温度湿度系统化草莓视频下载色版供应商
      全国咨询热线:133-6050-3273
      您的位置:草莓污污在线观看 > 公司动态 > 【涂鸦智能】 基于Arduino智能除湿工控器

      【涂鸦智能】 基于Arduino智能除湿工控器

      作者:CEO 时间:2023-02-01

      信息摘要:#d=====( ̄▽ ̄*)b#前排首先感谢金主,提供的这个学习的机会,学习的平台#一、设计概况1、湿度过高,自动开启除湿。适用于大型滑冰场的大型草莓视频APP在线、北方澡堂子、家庭浴室、浴霸等。(之前公司有个项目就是

      【涂鸦智能】 基于Arduino智能除湿工控器

      【涂鸦智能】 基于Arduino智能除湿工控器

        #d=====( ̄▽ ̄*)b

        #前排首先感谢金主,提供的这个学习的机会,学习的平台

        #一、设计概况

        1、湿度过高,自动开启除湿。适用于大型滑冰场的大型草莓视频APP在线、北方澡堂子、家庭浴室、浴霸等。(之前公司有个项目就是给的一个大型草莓视频APP在线厂家开发控制系统)。同理可做加湿功能。解决大型工控行业设备联网问题。

        [涂鸦平台MCU产品开发]()

        2、本方案基于Arduino-UNO,开发门槛低,程序烧录方便。

        ![mcu.png](//image.lceda.cn/pullimage/pGsXiDmbYHMPFN1SS5ZLcif1fxA0OclaAmDZXdvw.png)

        3、电源部分采用了AC-DC模块得到5V电源供给MCU,再经由AMS1117-33得到3.3V的电源供给WiFi模组。

        ![电源.png](//image.lceda.cn/pullimage/4rBli0WnqAHLf5MNqk96kKk6jq95YgoqDQCFkby5.png)

        4、一直以来继电器外围电路就要考虑太多的器件了,这里选择了一个NUD3105,内部集成了许多外围,可以直接控制继电器,不必再考虑继电器反向感应电、上拉(下拉、限流)电阻等,可以说是非常方便的。(上一次训练营得到的经验)

        ![继电器.png](//image.lceda.cn/pullimage/tt9w2f9RhVaAV3UiK7XnaCtneL7mQW77wDOHyB5e.png)

        5、Wifi模组是选用了涂鸦的WB3S(通用固件版),3.3V供电,串口通讯,通讯十分方便,外围电路仅需要电源+稳压电容,简直不要太简单。

        贴一下规格书链接:[涂鸦Wi-Fi+BLE双协议模组WB3S规格书](),电路如下图:

        ![wifi.png](//image.lceda.cn/pullimage/S1ZG3vKmy76j1wK63d036K2jNsqlfh5Y8op41Uij.png)

        开发资料是我用过的平台最详细的,连PID这类密钥类的都已经写入了案例代码,仅加入自己的MCU的功能代码即可完美调用,如下图:

        ![资料.png](//image.lceda.cn/pullimage/JS5mFmTcn3odCGrGfEzSJaki5n4QiOlSbJeToE9z.png)

        6、电平转换:由于Arduino-UNO平台IO是5V的电平,和Wifi模组是3.3V(如下图)

        ![IO口电平.png](//image.lceda.cn/pullimage/B6xlhnguwTeznCXhFAie7EodXhZzSSLizsFFCXMQ.png)

        Arduino-UNO和Wifi通讯时候必须要经过电平转换。如下图:

        ![电平转换.png](//image.lceda.cn/pullimage/zh98ioZXcgJwmzbxnG44MKn8KrFtVTcA3w1eXCrM.png)

        #二、公模外壳及PCB二三事

        1、在设计一款板子前最好能辖一个合适的外壳,根据外壳的尺寸来进行PCB的设计,这样后续能很好的安装,如果只是开发版、实验版那就请随意。

        2、刚好公司有这个外壳,公模的比较好买。随手就拿了一个来量了尺寸。制作PCB设计。(为了怕淘宝店铺链接失效,这里就不放链接了,大家可以在淘宝搜索“温湿度外壳”,按照价格低到高排序,找几下就能发现一模一样的外壳了)

        ![尺寸.png](//image.lceda.cn/pullimage/JpV8DldPFxzYdeGNeVxxvdvcUNflQmujQczPSGDO.png)

        按照搜索到的尺寸,规划好边框、螺丝孔,然后锁定

        ![画好边框.png](//image.lceda.cn/pullimage/bQw3k0cJI8D7eqJZ3OTYVPgKcZqiz80vQxUofry8.png)

        3、壳子选小了点,不好放呀。单面估计是放不下了

        ![顶层放不下.png](//image.lceda.cn/pullimage/4sI6CgL2hxKxX87XXPeve02nLyDrYcytEPa2NMQf.png)

        4、只好放到背面一些了,矮一些的器件放到底层去了,熬到了凌晨,完工

        ![平面图.jpg](//image.lceda.cn/pullimage/CtWV0dfdzcnlYGOVLqZxBUcdLzegJtV8BYTKDgku.jpeg)

        5、一些注意事项

        (1)强电区域用了比较粗的线宽2mm,并转换为焊盘了,后期可以多焊一些锡去加厚铜箔,增加功率。

        ![转换焊盘.png](//image.lceda.cn/pullimage/r40oKsSrJHJ2UEHR4LhGDffaAWjKtg7QMRWyUKVq.png)

        (2)强电区域,不能铺铜。因为要防止强电爬电到内部微电路,十分危险。可用实心填充工具,绘制完区域后在属性栏设置为无填充。如下设置:

        ![无填充.png](//image.lceda.cn/pullimage/MSBmM3xc7z8F8EFEEIkvLbzvqaipiuihvI0PJsrR.png)

        ![强电不铺铜.png](//image.lceda.cn/pullimage/6qePfOK8JvB2hDhcXlpgk7wXkAshCxAUuJQ5MFsy.png)

        (3)温湿度传感器位置要尽量靠边,有条件的可以加微小的风扇。传感器要远离内部发热的组件(如:电源芯片、电源模组、降压芯片等)。本案放置在顶部边角。

        ![温湿度传感器位置.png](//image.lceda.cn/pullimage/AYkUG3hs1crzLZPUs7IExkc8lbRT3vlEDD66faqx.png)

        #三、焊接成品

        1、方法多种多样,目前笔者是采用的“铁板烧”,先涂抹锡膏,贴上去,然后用“呼呼机”加热。

        2、完成了之后,AC-DC模块、继电器先不焊(焊了不方便调试),调试完成后再补上。~~~~

        ***注意:先检查VCC(5V3.3VUSB)和GND是否为短路状态,再插电前一点要确认好,短路切勿插电。***

        ![贴片焊接的.png](//image.lceda.cn/pullimage/07R2lcb8c0l9LBI8YAzfHfG1FjBTYYZqIpz9N6r8.png)

        #四、软件代码部分

        1、下载的MCU_SDK文件,打开来,放到一文件夹里。“.c”改为“.cpp”后,IDE就可以打开了。细节可以看[涂鸦平台提供的移植MCUSDK教程]()

        2、总之就是要多看文档,这个代码每个人的PID、功能等都不一样,我贴上了Arduino的主程序代码,如果你和我的功能一样,大家可以自行下载代码,并修改自己的PID等地方。当然功能不同的,只能自己看着修改了

        ```language

        #include"wifi.h"

        #include"Adafruit_SHT31.h"

        #include

        #include

        #include

        SoftwareSerialmySerial(5,6);//RX,TX

        #define_SS_MAX_RX_BUFF300

        #definerelay10

        Adafruit_SHT31sht31=Adafruit_SHT31();

        inttime_cnt=0,cnt=0,init_flag=0;

        intTEM,HUM,TEM_Past,HUM_Past;

        uniondata

        {

        inta;

        byteb[4];

        };

        dataHUMUPPR;

        dataHUMLOWER;

        voidsetup(){

        pinMode(relay,OUTPUT);//继电器I/O初始化

        digitalWrite(relay,LOW);

        pinMode(3,INPUT_PULLUP);//重置Wi-Fi按键初始化

        pinMode(13,OUTPUT);//Wi-Fi状态指示灯初始化

        mySerial.begin(9600);//软件串口初始化

        //mySerial.println("myserialinitsuccessful!");

        Serial.begin(9600);//PA3RXPA2TX

        Serial.println("serialinitsuccessful!");

        sht31.begin(0x44);//SHT地址0x44

        wifi_protocol_init();

        for(intn=0;n<4;n++)//湿度上限读取

        HUMUPPR.b[n]=EEPROM.read(n);

        for(intn=0;n<4;n++)//湿度下限读取,下限起始地址在4

        HUMLOWER.b[n]=EEPROM.read(n+4);

        }

        voidloop(){

        if(init_flag==0){

        time_cnt++;

        if(time_cnt%6000==0){

        time_cnt=0;

        cnt++;

        }

        wifi_stat_led(&cnt);//Wi-Fi状态处理

        }

        wifi_uart_service();

        myserialEvent();//串口接收处理

        key_scan();//重置配网按键检测

        aotocontrol();//自动控制

        }

        /***********完整代码详见附件*******************/

        ```

        3、设备的湿度上限下限由于是报警值,不能在程序中定义初值,否则一旦调电重启就会丢失设置的值,我这里是方式是把设定的阈值存储在单片机的ROM中(Arduino的EEPROM),这样进程到来时读取一次,下发设置值时写入。这样掉~~~~电也不会丢失数据了

        ```

        uniondata

        {

        inta;

        byteb[4];

        };

        dataHUMUPPR;

        dataHUMLOWER;

        for(intn=0;n<4;n++)//湿度上限读取EEPROM

        HUMUPPR.b[n]=EEPROM.read(n);

        for(intn=0;n<4;n++)//湿度下限读取EEPROM,下限起始地址在4

        HUMLOWER.b[n]=EEPROM.read(n+4);

        ```

        ```

        uniondata

        {

        inta;

        byteb[4];

        };

        dataHUMUPPR;

        dataHUMLOWER;

        /**********放置到上限值设置函数dp_download_maxhum_set_handle中*******/

        HUMUPPR.a=(int)maxhum_set;

        for(intn=0;n<4;n++)//写入湿度上限到EEPROM,上限起始地址是0

        EEPROM.write(n,HUMUPPR.b[n]);

        /**********放置到下限值设置函数dp_download_minihum_set_handle中*******/

        HUMLOWER.a=(int)minihum_set;

        for(intn=0;n<4;n++)

        EEPROM.write(n+4,HUMLOWER.b[n]);//写入湿度下限到EEPROM,下限起始地址是4

        ```

        #避坑指南:

        ##(1)掉电丢失湿度阈值:

        一定要用ROM来承接设置值,这样可以掉电保存;之前我写的程序久忘记了,一掉电就丢失之前设置好的值。

        ##(2)始终无法进入配网模式:

        SHT的底层库有500ms延时,在循环里调用读取时,我实测要7s才能返回给wifi模块心跳,始终连不上网,也无法进去配网模式,然后我就改了底层的延迟,问题就解决了;(可能还有其他解决的方式,我暂时还没有发现)

        ```language

        booleanAdafruit_SHT31::readTempHum(void){

        uint8_treadbuffer[6];

        writeCommand(SHT31_MEAS_HIGHREP);

        delay(500);/**********我把这里改成了100*************/

        Wire.requestFrom(_i2caddr,(uint8_t)6);

        if(Wire.available()!=6)

        returnfalse;

        for(uint8_ti=0;i<6;i++){

        readbuffer[i]=Wire.read();

        //Serial.print("0x");Serial.println(readbuffer[i],HEX);

        }

        ```

        ##(3)Wif模块下尽量不要走线:

        之前涂鸦的工程师说wifi模块下面最好不要走线,我的1.1版本走了,所有又画了1.2的PCB(心急已经提前打了1.1的板子),但是从目前测试来看,**V1.1**已经是**成功**了。所以小伙伴可以自行选择。

        ##(4)继电器有点高:

        继电器选择的时候尺寸没有注意,忘记算板子厚度了,有点高,超了1mm左右,盖子盖不上,还好我机智的用热熔胶给它俩黏住了。

        ##(5)仅供学习参考:~~~~

        完全复制有风险,代码、走线、布局等等被坑的别怪UP哦,后果自担啦

        #成功的喜悦(实测演示):

      声明:本站部分内容和图片来源于互联网,经本站整理和编辑,版权归原作者所有,本站转载出于传递更多信息、交流和学习之目的,不做商用不拥有所有权,不承担相关法律责任。若有来源标注存在错误或侵犯到您的权益,烦请告知网站管理员,将于第一时间整改处理。管理员邮箱:y569#qq.com(#改@)
      在线客服
      联系方式

      热线电话

      133-6050-3273

      上班时间

      周一到周六

      公司电话

      133-6050-3273

      二维码
      线
      网站地图