基于OpenWrt和TCPIP协议的Android远程无线智能机械d琴手系统

基于OpenWrt和TCPIP协议的Android远程无线智能机械d琴手系统,第1张

OpenWrt简介

OpenWrt 可以被描述为一个嵌入式的 Linux 发行版,(主流路由器固件有 dd-wrt,tomato,openwrt三类)而不是试图建立一个单一的、静态的系统。OpenWrt的包管理提供了一个完全可写的文件系统,从应用程序供应商提供的选择和配置,并允许您自定义的设备,以适应任何应用程序。

对于开发人员,OpenWrt 是使用框架来构建应用程序,而无需建立一个完整的固件来支持;对于用户来说,这意味着其拥有完全定制的能力,可以用前所未有的方式使用该设备。

关于基于OpenWrt和TCPIP协议Android远程无线智能机械d琴手系统.

 本文利用TCP/IP 协议,的Android 设备接入互联网,远程发送控制信号给刷有OpenWrt 嵌入式系统的3G 路由器,路由器用串口将信号给Arduino 控制板解析控制信号并控制机械d琴手动作,这一套解决方案不仅可以应用于智能家居、工业控制,还可以应用于远程教育。

一、TCP/IP 协议

TCP/IP 协议栈是一个实现网络上通信的协议族,这种协议使得不同平台架构网络之间的互联成为可能,它是一个真正开放系统,最早起源于一个关于分组交换网络研究的项目,后来发展成为Internet事实上的通信标准。TCP/IP 协议采用分层的结构形式,总共分成四层,是对OSI 结构的简化,它们每一层都实现了不同的功能模块和通信协议,每一层都为上一层提供不同的功能模块和通信协议,每一层都为上一层提供支持。

如图1TCP/IP 协议结构

基于OpenWrt和TCPIP协议的Android远程无线智能机械d琴手系统,基于OpenWrt和TCP/IP协议的的Android远程无线智能机械d琴手系统,第2张

二、OpenWrt 路由嵌入式系统

OpenWrt 是一个开源的Linux 版本,主要是用于嵌入式系统,其强大之处在于它的网络部分功能,现在很多嵌入式设备的代码都是使用OpenWrt 或者参考OpenWrt 是运行在嵌入式CPU 上,OpenWrt 做成的。主频一般都在几百兆左右,Flash 闪存一般为8M 或者16M,SDRAM 内存一般是16M。主流路由器固件有dd-wrt,tomato,openwrt三类。对于开发人员,dd-wrt,tomato,OpenWrt 是使用框架来构建应用程序,而无需建立一个完整的固件来支持; 对于用户来说,这意味着其拥有完全定制的能力,可以用前所未有的方式使用该设备。

本文中1的mini 路由器是常见的TP-LINK

无线标准:

IEEE

TL-WR7O3N v1,4MFlash,32MDDR,

有线标准:IEEE

802.11n、IEEE 802.11g、IEEE 802.11b,

802.3、IEEE 802.3u,最高传输速度150Mbps,信道数

1个10/100Mbps LAN/WAN 复用接口,1个USB接口,内置天线,支持3G、VPN、WDS 无线桥接、无线MAC 地址过滤、无线安全功能开关、64/128/152位WEP 加密、WPA-PSK/WPA2-PSK、WPA/WPA2 安全机制,远程WEB 管理,配置文件导入与导出,WEB软件升级。

在www.openwrt.org.cn 下载中心下载TL-WR703N的OpenWrt 固件,路由器通过网线连接电脑后登陆路由器,在路由器的固件升级中选择文件进行升级,升

级中不要断电,否则导致路由器损坏,整个过程需要5分钟左右,升级后路由器的USB就具备了驳接摄像头或者直插U 盘的功能,而官方版本只支持驳接3G

上网卡。刷完后固件版本为OpenWrt FirmWareAtTItude Adjustment( r31054) /LuCI Trunk

(trunk-svn8380 ),嵌入式Linux 内核版本为3.2.12。WIFI智能模块,直接把就是把3G 路由器改装的,TTL 焊点引到了迷你USB 接[ 1,这样就可以跟控制板进行通信和供电。远程设置的基本流程就是将连上宽带的无线路由

器添加一个虚拟服务器,IP 为192.168.1.17 ,新建两个服务端口,视频接入端口为8080,控制端口为2001,将3G 无线路由器的模式Access Point 改为Client并连上无线路由器,查看无线路由器的WAN口IP地址为202.203.41.14 ,在手机端接入服务器IP设置为202.203.41.14

,这样手机连上宽带后就可以连接上远程的3G 路由器。

图2 IP远程连接拓扑结构

基于OpenWrt和TCPIP协议的Android远程无线智能机械d琴手系统,基于OpenWrt和TCP/IP协议的的Android远程无线智能机械d琴手系统,第3张

三、Arduino控制系统

Arduino平台的基础就是AVR 指令集的单片机。Arduino是一个能够用来感应和控制现实物理世界的套工具。它由一个基于单片机并且开放源码的硬件

平台,和一套为Arduino 板编写程序的开发环境组成。Arduino 可以用来开发交互产品,比如它可以读取大量的开关传感器信号,并且可以控制各式各样的电灯、电机和其他物理设备。

图3 Arduino控制板的框图。

图4 控制系统组成框图

基于OpenWrt和TCPIP协议的Android远程无线智能机械d琴手系统,基于OpenWrt和TCP/IP协议的的Android远程无线智能机械d琴手系统,第4张

四、Android 手机端软件设计

Android 提供一套关于wifi 连接和数据信号收发的API,我们利用这些API 可以快速开发相关软件,软件Main.java 的基本函数构成如图5。

图5 Main.java 基本函数构成

基于OpenWrt和TCPIP协议的Android远程无线智能机械d琴手系统,基于OpenWrt和TCP/IP协议的的Android远程无线智能机械d琴手系统,第5张

常用钢琴键为21个键,即分别实现高中低三个音阶,安卓软件界面如图7。

六、总结

本文提出了一套完整了远程控制方案,包括硬件部分和软件部分,随着远程无线控制的发展,这个方向会越来越被大家所青睐,然而目前网络连接中广泛使用的IPV4 协议地址空间上存在很大的局限性,地址空间的局限往往使得运营商动态分配IP地址。如果自己有唯一的域名的话就可以解决这个问题,解析到域名的IP地址就可以唯一的连接到此地址作为服务器了,理论上全国各地均可以进行远程连接和控制。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/dianzi/2717991.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-08-17
下一篇 2022-08-17

发表评论

登录后才能评论

评论列表(0条)

保存