打印
[应用相关]

基于stm32的远程监控喂食器

[复制链接]
407|14
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
jzzllv|  楼主 | 2022-2-28 22:20 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

wifi智能小车模块+花生壳+STM32+APP

实现功能为视频传输与远程控制


1.wifi智能小车模块

该模块可以连接你所在地方的wifi,先使其成为访问该模块的内网。步骤1’通过网线或该模块的热点与电脑连接,在路由器管理页面(192.168.1.1)设置连接所在地方的网络,接口和视频/控制端口设置。再通过winscp 这个相当与Windows下面的文件管理器软件,利用它我们可以很方便地把文件从windows里面拖到WIFI板上。2’登陆所连接地方WiFi的路由器管理页面。在转发规则里面设置好内网端口,动态DNS登陆花生壳账号。




使用特权

评论回复
沙发
jzzllv|  楼主 | 2022-2-28 22:21 | 只看该作者
2. 花生壳原理
首先简单说一下花生壳,这是一个提供动态域名解析服务的商业化产品。所谓域名解析,常被称作DNS,也就是将对人类友好的域名与对计算机友好的点分式IP地址做关联的一个系统服务。打个比方,这个服务类似于手机里面的通讯录软件,它的作用就是将人能记住的姓名与一串毫无意义,很难**的电话号码关联起来。那么拨电话时,只需要在通讯录中查找姓名就可以了。
在大多数情况下,通讯录软件都能很好的工作,可正如这个世界本身的不完美,完美的软件也不存在,通讯录一个最明显的bug就是,一旦有人换了号码,通讯录就无法跟踪这种变化。回到我们讨论的DNS,情况就成了这样:有人申请了一个域名,在自己的笔记本电脑上做了一个网站,并将网站的域名关联到自家上网的IP地址后,全世界任何一个角落的人都可以通过这个域名访问他的网站。可如果这个人白天是在工作单位使用笔记本电脑呢,此时只能通过工作单位的IP才能访问网站,但是DNS那里登记的却是一个家庭IP,于是网站成了一个悲剧。
花生壳很好的修正了这个bug,如果域名所对应的IP地址经常会更换,那么可以注册后使用花生壳的软件,之后无论在哪里上网,域名都会和当前的上网IP建立对应关系。

总之你下载花生壳app,在上面所连接的WiFi下登陆,即相当于有了一个服务器。利用它可实现外网访问。



花生壳,虽然账号免费注册但内穿透要付费,个人用的话6块钱体验版就可以,一个月1G流量。配置方法:1’登陆花生壳账号,点内网穿透。2’在上图‘添加映射’中填写内网IP,对应的端口,名字随便起。3’复制分配的外网访问地址与花生壳端口号。
另外,也可以使用花生棒。花生棒的作用在于代替了花生壳在wifi下登陆的操作,其他啥用没有。花生棒一头用网线连路由器,一头usb口连电源。内网穿透啥的都还是靠花生壳,流量啥的该掏钱还得掏钱。

使用特权

评论回复
板凳
jzzllv|  楼主 | 2022-2-28 22:22 | 只看该作者
3. STM32单片机
wifi智能模块与单片机串口相连,通过下位机读取模块网络发来的信息(字符等),完成对应的指令操作。喂食器功能是驱动舵机(选择投喂的种类)和电机(主要是投放功能)。仅以智能双料喂食器为例部分代码片如下`在这里
while(1)
        {
                  if(USART_RX_STA)
                {
                                switch (USART_RX_BUF[0])
             {               
                case 'a':                                                     //打开a孔放a料
                     TIM_SetCompare2( TIM3,750); //600     //舵机左转
                                GPIO_SetBits(GPIOB,GPIO_Pin_8);   //启动电机旋转。
                                 delay_ms(500);
                    TIM_SetCompare2( TIM3,1500);      //复位舵机
                                USART_RX_STA=0;
                   break;
            case 'd' :                          //打开b孔放b料
                    GPIO_SetBits(GPIOB,GPIO_Pin_8);   //启动电机旋转。
                    TIM_SetCompare2( TIM3,2460);             //舵机右转90’
                    delay_ms(500);TIM_SetCompare2( TIM3,1500);        
                                USART_RX_STA=0;
                     break;                 
       case 's' :                          //停止
           printf("stop");
              TIM_SetCompare2( TIM3,1500); delay_ms(500);       
                    GPIO_ResetBits(GPIOB,GPIO_Pin_8);
                   USART_RX_STA=0;
           break;                 
     default :
      printf("unknown");
          TIM_SetCompare2( TIM3,1500);         GPIO_ResetBits(GPIOB,GPIO_Pin_8);
                USART_RX_STA=0;
       break;
       }
    }
    }



使用特权

评论回复
地板
jzzllv|  楼主 | 2022-2-28 22:23 | 只看该作者
4. 手机端APP
使用我上传过的wifi小车app或其他的都可以手机端app
App是通过SOKET编程获取公网IP。在APP设置页面中,视频地址填写第2条中的外网访问地址,控制地址IP(需要在电脑上ping一下花生壳域名,出现的ip就是。有些公共场合ping不通,不影响使用)端口号为花生壳的端口号。
做完这些你就可以秀操作了。。。

注意:wifi模块在刚上电时会网络配置,乱发一堆数据。为防止主控卡死,可以设置一些延时(可能接近一分钟)或者先给模块上电再给主控上电。

使用特权

评论回复
5
carpsnow| | 2022-3-2 17:33 | 只看该作者
喂食器?小车?~~

使用特权

评论回复
6
gygp| | 2022-3-4 20:13 | 只看该作者
可以用websocket吗

使用特权

评论回复
7
uytyu| | 2022-3-4 20:25 | 只看该作者
MQTT通信协议吗

使用特权

评论回复
8
jonas222| | 2022-3-4 20:39 | 只看该作者
如何在WiFi内部建立服务器呢?

使用特权

评论回复
9
hudi008| | 2022-3-4 20:59 | 只看该作者
可以使用4G通信吗

使用特权

评论回复
10
gygp| | 2022-3-5 22:06 | 只看该作者
推荐使用stm32h7吧,性能更高端。

使用特权

评论回复
11
burgessmaggie| | 2022-3-5 22:58 | 只看该作者
远程监控都需要什么元器件?

使用特权

评论回复
12
sesefadou| | 2022-3-5 23:30 | 只看该作者
使用的是wifi的哪个模块呢

使用特权

评论回复
13
tifmill| | 2022-3-6 12:45 | 只看该作者
这个使用的服务器了吗  

使用特权

评论回复
14
fengm| | 2022-3-6 13:41 | 只看该作者
能够添加摄像头吗

使用特权

评论回复
15
yorkbarney| | 2022-3-6 14:26 | 只看该作者
花生壳可以配置吗  

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

11

主题

49

帖子

0

粉丝