用老掉牙的A10来搭建一个家庭物体移动监控平台

电子说

1.3w人已加入

描述

首先来说下这个A10开发板的背景。机缘巧合下,小编我收了一个的A10的板子,一个来自遥远的保加利亚的雄狮板——OLIMEX A10-OlinuXino-LIME。收到之后我第一时间找到了一位优秀的工程师,进行了一番颇为仔细地评测。

其实在一开始这位工程师是拒绝的,没错就是之前提过的那位喜欢追新潮的工程师,不知道的可以点(有了这些开发板,谁还要天猫精灵啊)简单回顾一下。为什么他会拒绝呢?因为他追新啊,他爱炫耀啊。一个老掉牙的A10,他有什么好与身边好友得瑟的??

不过在我的威(ku)逼(ku)利(ai)诱(qiu)之下,他还是尽心尽力地做了一番详尽的评测,并找出了这个开发板的唯一个亮点:《SATA是亮点——A10-OLinuXino-LIME单板计算机评测》。然后,这个板子,完成了它的使命,又被我扔进了箱底。

一个还搭载着2011年芯片的开发板,就像是10年前挂历上的美女——现在没有人想要再多看一眼。

但其实说真的,A10-OlinuXino-LIME的做工还是非常地扎实的,元器件排列紧致有序,外设资源还称得上丰富,各类必要接口也一个不少。里里外外都透露着一股精气神。

绝不是吹,可比很多大牌原厂现在出的板子做工好多了去了。

我要给它找个好人家!

我要给它找个好人家!

我要给它找个好人家!

于是我把它藏匿在一堆板子中,做了个试用活动。期待有人能够领走它,爱护它,让年迈的它能够物尽其用,重新焕发生机。

活动报名濒临结束时,我瞥了一眼后台。吁~居然有一个工程师申请了这个板子!

我立马就通过了申请,把这个板子快递给了他。

随后,这个叫做ICLYL的工程师,用这块老掉牙的A10开发板,搭建了samba共享文件系统,实现了FTP远程文件传输服务器,制作了一个个人照相机,最后他还搞了个家庭监控,还可以对移动物体进行监测…

小编我深深地被这种不离不弃的精神打动,特此将他的试用过程搬过来,给大家分享!

如果你手里也有一块A10板,不要对它嗤之以鼻,来看看别人都是怎么玩的吧!

目录:

1. 首次开箱测评

2. 系统的烧录与配置

3. 网络配置与VNC远程桌面

4. update更新系统提示错误解决

5. vi/vim编辑工具的安装

6. 搭建samba共享文件系统

7. 实现FTP远程文件传输服务器

8. 制作个人照相机

9. 家庭监控--移动物体监控检测motion

(以下内容来自ICLYL)

1. 首次开箱测评

首先非常感谢21IC的支持,在过年前就拿到板卡了,但是轻松过大年就一直放置没有开箱,这次来个开箱贴

快递中附带一张STM32L4+的宣传A4纸张,拍摄如下:

正面照:可以看到,布局非常紧凑,且端口丰富

但美中不足之处是:

双排排插是1.27mm(50mil)不是常见的2.54mm(100mil)

反面照:

板卡差不多把电容电阻等器件放置在背面,后面显得密集

合照:

板卡的特点:

A10 1GHz Cortex-A8 ARMv7 CPU, VFPv3, NEON, Mali 400 GPU, CedarX VPU

512MB DDR3 RAM memory

optional 4GB NAND FLASH memory

SATA connector with 5V SATA power jack

HDMI FullHD 1080p

2x USB Low-Full-High-Speed hosts with power control and current limiter

USB-OTG with power control and current limiter

100MBit native Ethernet

LiPo Battery connector with battery-charging capabilities

LCD connector compatible with with 4.3", 7.0", 10.1" LCD modules from Olimex

160 GPIOs on three GPIO connectors

MicroSD card connector

DEBUG-UART connector for console debug with USB-SERIAL-CABLE-F

status LED

Battery charge status LED

Power LED

2KB EEPROM for MAC address storage and more

2 BUTTONS with ANDROID functionality + RESET button

2 mount holes

5V input power supply, noise immune design

PCB dimensions: 84 x 60 mm

附上几张功能图,详解一下板卡强大的功能

移动监控

2. 系统的烧录与配置

采用的是Debian系统,相关下载地址为:https://www.olimex.com/wiki/imag ... 0_release_3.torrent

Debian 是一个自由的操作系统(OS),提供您安装在计算机上使用。操作系统就是能让您的计算机工作的一系列基本程序和实用工具。Debian 不只是提供一个纯粹的操作系统:它还附带了超过 51000 个软件包,这些预先编译好的软件被包裹成一种良好的格式以便于在您的机器上进行安装。

下载完成后,准备一张sd卡,格式化我直接用DisGenius工具格式化的sd卡,格式化后如下所示:

移动监控

再用Win32 Disk Imager工具烧录Debian系统,选择系统目录包含.img文件,如下

移动监控

点击Write按钮

移动监控

等待烧录完成,成功过如下所示:

移动监控

用USB转串口工具连接A10-OlinuXino-LIME侧边的串口引脚打开putty工具,选择对应端口COM14与波特率115200

移动监控

登陆后如下所示:

移动监控

移动监控

系统默认采用root用户,可以用

sudo passwd root

来重置密码简单查看CPU信息等信息

移动监控

查看内存信息,如下所示:我采用的是8G的内存卡,空间的划分如下所示

移动监控

3. 网络配置与VNC远程桌面

A10-OlinuXino-LIME板卡默认以太网是不大开的,可以用 ifconfig 查看网络情况

ifconfig -a

移动监控

输入,打开网络

dhclient eth0

移动监控

配置好网络后,安装远程桌面先输入

sudo apt-get update

sudo apt-get install tightvncserver

移动监控

安装完成后,输入

tightvncserver

移动监控

配置好后,可以用vnc view工具访问A10-OlinuXino-LIME的桌面系统访问结果如下所示:

在debian桌面系统中点开终端窗口,如下所示

移动监控

配置时间与区域选择亚洲、上海配置过程如下所示:

移动监控

移动监控

配置好后,可以看到系统时间与网络时间同步,如下图所示:

移动监控

打开网页测试,打开21ic,可以看到图片 英文都很好的识别出来了,但是中文识别不了

移动监控

寻找中文包,下载安装,如下图所示

移动监控

移动监控

安装完成后,刷新网页,可以看到中文可以很多的被支持,如下图所示:

移动监控

4. update更新系统提示错误解决

当使用apt-get update更新系统时,提示如下错误:找不到可用的公共ID

Reading package lists... Done

W: There is no public key available for the following key IDs:

9D6D8F6BC857C906

W: There is no public key available for the following key IDs:

7638D0442B90D010

W: There is no public key available for the following key IDs:

7638D0442B90D010

寻找了一番,找了一个解决办法。安装几个软件包,如下操作:

apt-get install debian-keyring debian-archive-keyring

移动监控

重新更新系统

apt-get update

可以看到问题完美解决。

5. vi/vim编辑工具的安装

由于不需要图形界面,vi是效率很高的文本编辑器。尽管在Linux上也有很多图形界面的编辑器可用,但vi在系统和服务器管理中的功能是那些图形编辑器所无法比拟的。Vim普遍被推崇为类Vi编辑器中最好的一个。Vim是从 vi 发展出来的一个文本编辑器。代码补全、编译及错误跳转等方便编程的功能特别丰富,在程序员中被广泛使用,和Emacs并列成为类Unix系统用户最喜欢的文本编辑器。强大之处就不在这里详细介绍,感兴趣的可以上网查看一下。个人比较喜爱vi/vim首先移除系统中自带的vim

sudo apt-get remove vim-common

移动监控

再重新安装一个vim

sudo apt-get install vim

安装完成后,为了方便使用,在/etc/vim/vimrc后面添加三句语句

sudo vim /etc/vim/vimrc

移动监控

下面附上vi的基本语法,快捷方式与操作过程

vi有3个模式:插入模式、命令模式、低行模式。

插入模式:在此模式下可以输入字符,按ESC将回到命令模式。

命令模式:可以移动光标、删除字符等。

低行模式:可以保存文件、退出vi、设置vi、查找等功能(低行模式也可以看作是命令模式里的)

打开文件、保存、关闭文件(vi命令模式下使用)

vi filename     //打开filename文件

:w                  //保存文件

:q                  //退出编辑器,如果文件已修改请使用下面的命令

:q!                 //退出编辑器,且不保存

:wq               //退出编辑器,且保存文件

插入文本或行(vi命令模式下使用,执行下面命令后将进入插入模式,按ESC键可退出插入模式)

a       //在当前光标位置的右边添加文本

i        //在当前光标位置的左边添加文本

A      //在当前行的末尾位置添加文本

I       //在当前行的开始处添加文本(非空字符的行首)

O     //在当前行的上面新建一行

o     //在当前行的下面新建一行

R     //替换(覆盖)当前光标位置及后面的若干文本

J     //合并光标所在行及下一行为一行(依然在命令模式)

删除、恢复字符或行(vi命令模式下使用)

x          //删除当前字符

nx        //删除从光标开始的n个字符

dd       //删除当前行

ndd     //向下删除当前行在内的n行

u         //撤销上一步操作

U         //撤销对当前行的所有操作

复制、粘贴(vi命令模式下使用)

yy      //将当前行复制到缓存区

nyy    //将当前行向下n行复制到缓冲区

yw     //复制从光标开始到词尾的字符

nyw   //复制从光标开始的n个单词

y^     //复制从光标到行首的内容

y$     //复制从光标到行尾的内容

p      //粘贴剪切板里的内容在光标后

P      //粘贴剪切板里的内容在光标前

设置行号(vi命令模式下使用)

:set  nu       //显示行号

:set nonu    //取消显示行号

6. 搭建samba共享文件系统

Samba服务功能强大,这与通信是基于SMB协议有大的关系。SMB协议不仅能够提供目录和打印机共享,还支持认证和权限设置等功能。在早期,SMB运行于NBT协议(NetBIOS over TCP/IP)上,使用UDP协议的137、138及TCP协议的139端口,但随着后期开发,它可以直接运行于TCP/IP协议上,没有额外的NBT层,使用TCP协议的445端口。通过Samba服务,Windows用户可以通过【网上邻居】窗口查看到Linux服务器中共享的资源,同时Linux用户也能够查看到服务器上的共享资源。本次通过搭建samba共享文件系统,可以很方便的通过Windows系统访问A10-OlinuXino-LIME系统文件安装前记得更新系统

sudo apt-get update

sudo apt-get install samba

再次安装samba-common-bin

sudo apt-get install samba-common-bin

安装完成后,记得修改修改配置文件/etc/samba/smb.conf

sudo vim /etc/samba/smb.conf

移动监控

重启samba

sudo /etc/init.d/samba restart

移动监控

还有可以通过电脑网络查看如下图所示A10LIME就是通过samba共享的文件系统

移动监控

到此为止,你就可以很方便的在WINDOW系统中访问A10-OlinuXino-LIME系统文件。

7. 实现FTP远程文件传输服务器

文件传输协议 FTP [ File Transfer Protocol ]使得主机间可以共享文件。FTP 使用TCP 生成一个虚拟连接用于控制信息,然后再生成一个单独的 TCP 连接用于数据传输。控制连接使用类似TELNET协议在主机间交换命令和消息。文件传输协议是TCP/IP网络上两台计算机传送文件的协议,FTP是在TCP/IP网络和INTERNET上最早使用的协议之一,它属于网络协议组的应用层。FTP客户机可以给服务器发出命令来下载文件,上传文件,创建或改变服务器上的目录。首先安装FTP包

sudo apt-get update

安装完成后,修改 /etc/vsftpd.conf配置文件,如下图所示箭头的表示需要修改

移动监控

修改完成后如下所示:

移动监控

保存配置,下载一个FTP文件工具,如下图所示输入主机IP地址用户名密码点击登陆就可以看到

移动监控

单击 是

移动监控

再次输入密码,等待一会

移动监控

就可以看到:左边是电脑文件,右边是系统文件

移动监控

到这里FTP服务器就搭建完成,可以远程访问,修改,拖动系统文件

移动监控

这样在任何地点,只要你登陆服务器就可访问文件,相当个人私有云盘。

8. 制作个人照相机

在淘宝淘了一个树莓派USB插孔的摄像头

摄像头参数:

镜头焦距:F6.0MM

调焦范围:20MM至极远

视像解析度:640*480

ls /dev

ls /dev/video*

lsusb

移动监控

安装摄像头设配成功后,安装拍照软件包

sudo apt-get install fswebcam

移动监控

移动监控

运行下面代码,拍照大小为640X480,保存名称为image.jpg

fswebcam -r 640x480 image.jpg

移动监控

也可以通过上文中ftp远程服务器直接访问硬盘,获取图片

移动监控

9. 家庭监控--移动物体监控检测motion

首先贴出两个网址官网指南:http://www.lavrsen.dk/foswiki/bin/view/Motiongithub源代码:https://github.com/sackmotion/motion家庭移动物体监控其实就是利用摄像头监控某个区域,当有人或者物体经过是,摄像头边自动抓拍移动物体,保存在硬盘上。现在就用motion搭建监控设配

sudo apt-get install motion

移动监控

移动监控

要想查看motion.conf配置的参数,可以参考下面网址https://motion-project.github.io/motion_config.html修改配置文件

vim /etc/motion/motion.conf

移动监控

[0] Motion thread 1 restart[1] Thread 1 started[1] cap.driver: "uvcvideo"[1] cap.card: "USB2.0 PC CAMERA"[1] cap.bus_info: "usb-sw-ehci-1"[1] cap.capabilities=0x04000001[1] - VIDEO_CAPTURE[1] - STREAMING[1] Unable to query input -1 VIDIOC_ENUMINPUT: Invalid argument[1] ioctl (VIDIOCGCAP): Inappropriate ioctl for device[1] Could not fetch initial image from camera[1] Motion continues using width and height from config file(s)[1] Resizing pre_capture buffer to 1 items[1] bind(): Address already in use[1] Problem enabling stream server in port 8081: Address already in use[1] Thread exiting[0] Motion thread 1 restart[1] Thread 1 started[1] cap.driver: "uvcvideo"[1] cap.card: "USB2.0 PC CAMERA"[1] cap.bus_info: "usb-sw-ehci-1"[1] cap.capabilities=0x04000001[1] - VIDEO_CAPTURE[1] - STREAMING[1] Unable to query input -1 VIDIOC_ENUMINPUT: Invalid argument[1] ioctl (VIDIOCGCAP): Inappropriate ioctl for device[1] Could not fetch initial image from camera[1] Motion continues using width and height from config file(s)[1] Resizing pre_capture buffer to 1 items[1] bind(): Address already in use[1] Problem enabling stream server in port 8081: Address already in use[1]

Thread exiting遇到这种情况是摄像头已经在运行中,重复输入motion指令的原因表示摄像头设备已经启动,在游览器上输入http://ip地址:8081就可以看到摄像头拍摄的视频,如下所示

当然,游览器观测的视频有几秒钟的延迟。。。远程监控成功后,再来设置移动物体的检测locate,定位移动的物体,把它修改成为on,会把移动的物体框起来on_motion_detected # 在检测到移动物体时执行什么命令或者程序。但是我实际中使用时,根本不可以检测移动物体后来我仔细查看motion配置文件过程中,发现 output_motion 参数才是移动物体检测,设置为on(还是多多看配置文档的注释)

移动监控

保存,重新service motion restart 可以看到有一个白色的框框选了移动物体,在配置文件中没有发现白色框颜色的设置

最后设置储存地址:target_dir是拍摄照片或视频存储目录,这里设置为挂载U盘的/mnt/usb/motion目录到此为止,家庭安全监控系统搭建完成,可以通过远程网址实时监控家庭情况。FTP远程服务器还可以访问移动硬盘。

虽然A10是一颗很老的芯片了,不过作为还是有很多可玩的地方,甚至可以说,在一些需要单一应用的场景中,大家也可以用来做一些有意义的事情,让它发挥余温余热。

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分