当前位置: 首页 > news >正文

基于Nanopi duo2的WiFi智能摄像头

1.固件包烧录

https://wiki.friendlyelec.com/wiki/index.php/NanoPi_Duo2/zh#.E8.BF.9E.E6.8E.A5WiFi
固件包链接以及烧录工具都在上面链接中
在这里插入图片描述
烧录过程
使用读卡器将SD卡插入到电脑,然后打开烧录工具
在这里插入图片描述

在这里插入图片描述

2.通过串口工具连接板子使其连接WiFi

对应的串口工具,就是这个HyperTerminal
在这里插入图片描述
由于是第一次启动板子,板子还没有连接WiFi,所以需要通过该软件来连接
在这里插入图片描述
然后需要连接WiFi(root账号的密码为fa)
在这里插入图片描述
使用ifconfig命令查看给板子分配的IP地址
在这里插入图片描述
然后就不需要串口线,我们只需要对板子供电即可
接着我们直接使用云服务器来访问板子,通过给板子分配的ip地址,用户名为root,密码为fa
在这里插入图片描述
此时我们可以理解该云服务器就是这块Linux板子,也可以直接在这个上面编译,但是不建议
在Nanopi duo2板子会在云服务器上搭建,而确实也可以直接在板子上编译,但是由于Linux板子其CPU,内存等资源相对有限,所以我们会使用交叉编译,在虚拟机中编译好,然后将编译好的程序发送到云服务器上跑。
板子对应的架构是ARM,而虚拟机在电脑上是X86架构,二者对应生成的二进制文件不太一样,就相当于一个是中文版的,一个是英文版的,我们需要在虚拟机中使用交叉编译器将代码编译,然后发送到板子对应的云服务器下,就可以直接在板子上跑了

3.交叉编译器的下载

在这里插入图片描述

在这里插入图片描述
将下载包直接拖动到虚拟机上根目录的opt下
在这里插入图片描述
在这里插入图片描述
使用命令将其解压形成4.9.3

tar -xz arm-cortexa9-linux-gnueabihf-4.9.3-20160512.tar.xz

在/opt/4.9.3/bin/可以找到arm-linux-gcc交叉编译器,但是还是不能之间使用该命令进行编译,需要将该交叉编译器的路径导入到环境变量中就可以了。
使用root账户vim打开文件/root/.bashrc
在这里插入图片描述
退出来记得使用指令让配置文件生效

source /root/.bashrc

随便写一段代码
在这里插入图片描述
然后使用交叉编译器编译

arm-linux-gcc -o tt tt.c

在这里插入图片描述
使用file命令查看tt二进制文件信息
在这里插入图片描述
发现是ARM架构的,现在就可以下载到板子上了,通过下面的指令

在这里插入图片描述

4.mjpg-streamer

在Nanopi duo2上会带mjpg-streamer,摄像头会将采集到的摄像头数据放到/dev/video0文件中去,而mjpg-streamer会将/dev/video通过输入文件读到mjpg-streamer tcp服务器上,然后通过socket输出文件到网页上去,因为板子连接到路由器,我们就可以在浏览器上通过访问分配给板子的ip地址+端口号8080,就可以获得摄像头了,不过需要先编译形成输入库文件和输出库文件
在这里插入图片描述

在这里插入图片描述
如果没有的话需要使用make指令编译makefile,使其产生,然后运行start.sh即可
在这里插入图片描述
在浏览器上输入ip地址+端口号8080
在这里插入图片描述
就可以看到摄像头采集的图像
如果要修改分辨率的话,使视频更流程,我们可以降低分辨率通过设置start.sh文件

 vim start.sh

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

5.通过板子控制舵机转动

因为要使摄像头转动,我们使用到舵机,我们直接在板子上编译程序实现舵机转动,舵机转动的原理及操作方法在我之前的博客上有用到,通过设置PWM
在这里插入图片描述

首先需要上述操作进行编译安装
在这里插入图片描述
在这里插入图片描述

通过./bulid将二进制文件下载到开发板上

在这里插入图片描述
通过gpio readall指令查看
在这里插入图片描述
找到我们要操作的引脚
在这里插入图片描述
如图是我们接舵机的引脚,GPIOA11对应13号引脚

#

相关文章:

  • PW_Balance
  • 分布式简单理解
  • windows上vscode cmake工程搭建
  • 华为昇腾服务器(固件版本查询、驱动版本查询、CANN版本查询)
  • 8.python文件
  • UDP和TCP
  • 基于Java+SpringBoot+Vue的前后端分离的火车订票管理系统
  • Docker 容器
  • Android:权限permission申请示例代码
  • 如何在Vue中更优雅地处理403错误?
  • ubuntu24.04无法安装向日葵,提示依赖libgconf-2-4怎么办?
  • win10把c盘docker虚拟硬盘映射迁移到别的磁盘
  • Windows 图形显示驱动开发-上下文监视
  • 使用Ubuntu搭建Java部署环境
  • QPainter绘制3D 饼状图
  • VMware NSX 4.X Professional V2(2V0-41.24)题库
  • 软考高级信息系统项目管理师笔记-第2章信息技术发展
  • Python开源项目月排行 2025年1月
  • 智能预警系统标准化处理流程
  • LeetCode刷题---二分查找---350
  • 公司制做网站/线下引流推广方法
  • 网站不备案有什么影响/上海网络推广服务公司
  • 网站建设项目申请/查域名备案
  • 赣州建网站/网站推广优化设计方案
  • 商丘市做1企业网站的公司/网页模板免费下载网站
  • wordpress cosy2.04/郑州百度seo网站优化