九型人格 发表于 2022-2-28 16:33

QT+树莓派+STM32 搭建远程监控小车

一.描述
   由于最近大创项目需要用到树莓派采集视频图像,并且突然看到了桌子底下吃灰了一年多的坦克小车,想当时还是400块大洋买的,现在想来也是心在滴血。所以想把两者结合起来,花了两天时间做了个简单的QT远程监控小车。来抚平一下我内心的伤痛,要不是大创项目,想来我的树莓派也要吃灰。
   言归正传,本次小项目主要实现了一个基于树莓派和Qt上位机的远程监控小车。可以通过自制的遥控器和QT上位机实现两种控制方式,Qt上位机可以实时查看小坦克上的摄像头拍摄的画面。Qt上位机的指令通过socet 协议发送给树莓派,树莓派再将指令通过串口转发给STM32,STM32定时器输出PWM控制小车前进,并配以PID算法使小车能够走直线。其具体的结构框图如下所示:


九型人格 发表于 2022-2-28 16:35

二. 环境概述
硬件:坦克小车主控 STM32F103RCT6
          遥控器主控:坦克小车主控 STM32F103RCT6
          树莓派:树莓派4B,官方CSI摄像头
软件版本:Keil5(5.30)
                  Qt5.9(5.90)
                  VS Code(1.52.1)
操作系统:Windows10 家庭版
                  树莓派镜像:2020-12-02-raspios-buster-armhf.img

九型人格 发表于 2022-2-28 16:37

三.效果展示
1.遥控器
   遥控器是自己做画的PCB做的板,有两层叠层的。(我应该拍一个立体效果的,哈哈)。右边四个按键可控制小车动向,左边四个按键的选择菜单。遥控器采用锂电池供电。

九型人格 发表于 2022-2-28 16:39

九型人格 发表于 2022-2-28 17:03

2.坦克小车全身照
   看起来接线有点乱啊,好久以前画的最小系统和电源板,现在来看的话应该画到一起的。那个绿色便是树莓派了

九型人格 发表于 2022-2-28 21:45

3.QT上位机控制界面
   Qt编写的上位机界面也比较简单,刚开始学,很多高级应用也没有使用到,左边窗口是树莓派摄像头传过来的实时监控画面。右边部分是控制界面,下面的输入框要输入正确的服务器IP和端口号。

九型人格 发表于 2022-2-28 21:45

九型人格 发表于 2022-2-28 22:01

4.服务器运行界面
系统采用树莓派作为本地服务器,服务器使用C语言编写,启动过程中首先启动树莓派服务器,在启动 qt控制界面输入IP进行连接,连接成功后会出现如图所示的现象。

九型人格 发表于 2022-2-28 22:12

九型人格 发表于 2022-2-28 22:13

四.各部分具体实现过程
1.树莓派部分
   本篇默认大家的树莓派环境已经进行过换源等操作,并且已经安装了GCC、VIM、locate等工具。

a.MJPG-streamer的安装和使用
   MJPG-streamer是一款免费基于IP地址的视频流服务器,它的输入插件从摄像头读取视频数据,这个输入插件产生视频数据并将视频数据复制到内存中,它有多个输出插件将这些视频数据经过处理,其中最重要的输出插件是网站服务器插件,它将视频数据传送到用户浏览器中。

pentruman 发表于 2022-3-3 22:14

远程控制可以做两点之间直连吗

febgxu 发表于 2022-3-3 22:42

树莓派+STM32是怎么建立通信的?

mnynt121 发表于 2022-3-3 22:57

使用pwm调速了吗   

claretttt 发表于 2022-3-3 23:19

为什么要用树莓派呢   

linfelix 发表于 2022-3-4 19:57

远程设备开发太难了。   

earlmax 发表于 2022-3-4 20:36

QT做的上位机吗?

tabmone 发表于 2022-3-5 22:29

可以做远程的图像识别吗

zerorobert 发表于 2022-3-5 23:22

这个树莓派是串口通信吗

uytyu 发表于 2022-3-6 13:25

这个直线行驶是怎么控制的呢

averyleigh 发表于 2022-4-1 15:26

远程监控小车应用在哪里的
页: [1] 2 3 4
查看完整版本: QT+树莓派+STM32 搭建远程监控小车