Android透明串口传输模块的设计与应用

来源 :中国机械 | 被引量 : 0次 | 上传用户:licx1010
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  摘 要: Android设备可用作工业控制上位机。设计了一种Android透明串口传输模块,模块集成了蓝牙转串口、WiFi转串口与USB转串口三种通信方式,用户可任意选取一种; 模块自动建立通信连接,提供与下位机串口通信的透明输入输出接口。讨论了Android透明串口传输模块的软件功能、硬件连接与软件实现,并将其应用于自动缝纫设备。
  关键词: 安卓;工业控制;蓝牙;串口;无线局域网;通用串行总线
  引言
  智能移动设备近几年来发展迅速,在日常生活与工业中的应用日益广泛。对传统的工业控制领域,通常采用PC机、操作面板控制设备[1]。PC机成本较高,体积较大,携带性不好;操作面板界面不直观,操作复杂。智能移动设备如智能手机、平板电脑体积较小,在工业现场便于携带,其触摸屏用户体验较好,相比传统的PC机、操作面板更具优势。Android是一款基于Linux的开源移动设备操作系统,具有完全开放性,适合取代工业控制上位机PC与操作面板[2]。工业控制下位机通信接口通常为串口,Android设备可作为上位机通过蓝牙转串口、WiFi转串口或USB转串口模块与下位机串口通信。Android设备虽然支持这三种通信方式,但直接使用Android API开发应用程序较为麻烦,且对于USB转串口通信,目前没有可用API,这使得开发存在一定复杂性。本文旨在提出一种Android透明串口传输模块,简化Android工业控制上位机应用程序的开发。
  1.功能说明
  本模块集成蓝牙转串口、WiFi转串口与USB转串口三种通信方式,可直接与下位机串口通信。用户选择三种方式中的一种,模块建立对应通信连接,这一过程由模块自动处理与维护,对用户透明。模块提供一组统一的read(),write()方法作为对外数据通信接口,用户通过此接口与下位机串口通信。
  3.Android透明串口传输模块的软件设计
  Android透明串口传输软件模块分为三个部分:通信方式选择功能设计、自动建立通信功能设计以及数据通信功能设计。
  3.1 通信方式选择功能设计
  通信方式选择功能用于选择模块通信方式,配置通用通信地址。通信方式m_ComMode可为蓝牙转串口、WiFi转串口和USB转串口通信中的一种,通用通信地址m_ComAddr为与通信方式对应的蓝牙Mac地址、WiFi IP地址与端口号以及串口设备名称与波特率。
  3.2 自动建立通信功能设计
  自动建立通信功能根据用户置入的通信方式与通用通信地址,自动建立通信。
  3.2.1 Android蓝牙转串口、WiFi转串口、USB转串口通信建立方法
  Android从2.2版本开始支持蓝牙功能,并且为开发者提供开发蓝牙应用程序的API[3]。开发蓝牙应用程序首先需要在Manifest中添加权限。
  利用Android API建立蓝牙转串口通信的主要步骤如下:根据蓝牙Mac地址返回蓝牙设备对象、建立蓝牙套接字、得到输入输出流。
  利用Android API建立WiFi转串口通信的主要步骤如下[4]:建立套接字、得到输入输出流。
  对于USB转串口通信应用程序开发, Android SDK未提供API,本文在开源项目android-serialport-api基础上进行开发修改[5]。
  首先在工程中导入开源项目android-serialport-api的源代码,然后修改代码。建立串口通信代码如下:
  // 调用android-serialport-api自带的open方法,根据选择的波特率与设备名称打开串口
  FileDescriptor m_FileDescriptor = open ( device_name , baudrate, flags);
  // 得到输入输出流
  InputStream m_com_InStream = new FileInputStream ( m_FileDescriptor );
  OutputStream m_com_OutStream = new FileOutputStream ( m_FileDescriptor );
  3.2.2 通信的自动建立
  Android的蓝牙转串口、WiFi转串口和USB转串口虽然在建立通信过程中的实现细节不同,但其过程皆可以概括为利用所需参数(蓝牙Mac地址、WiFi IP地址与端口号、串口波特率与设备名称)经过多步配置建立连接,最终得到输入输出流。可以利用其过程中的相似性编写统一的建立通信方法,方法根据通信方式m_ComMode 调用对应的通信建立程序,通过通用通信地址m_ComAddr经多步配置建立连接,得到输入输出流。
  3.3 数据通信功能设计
  数据通信功能是Android透明串口传输模块面向用户的接口,提供一组输入输出方法read()、write(),用户通过此方法经蓝牙转串口、WiFi转串口或USB转串口模块与下位机串口通信。
  InputStream/OutputStream类与DataInputStream/DataOutputStream类存在继承关系,它们的read()、write()方法具有相同的名称与参数形式,无论建立何种通信方式,都可以用同样的方法对它们进行读写。输入输出流读写主要方法的如下:根据通信方式选择对应的输入流读取数据、根据通信方式选择对应的输出流写入数据。
  对于设备流数据读写,一般为阻塞方式, 为适应阻塞操作,本模块创建一个用于数据读写的读写线程[6]。读写方法read()、write()将读写输入输出流所需参数m_receive_byte_Offset(接收数据起始位)、m_receive_byteCount(接收数据位数)、m_send_byte_Offset(发送数据起始位)、m_send_byteCount(发送数据位数)传递给读写线程,读写线程调用read_stream()、write_stream()方法实现数据通信。read()、write()方法会休眠一定时间等待读写线程完成任务,超出时限后不再等待,判定任务失败,以避免调用程序的阻塞。
  4.应用实例
  自動缝纫设备在服装厂中应用普遍,这些设备通常通过操作面板控制设备运行、修改参数。操作面板界面不直观,操作复杂。本文以Android平板代替操作面板,远程控制设备[7]。使用Android透明串口传输模块,通过蓝牙转串口模块与自动缝纫设备单片机串口通信。用户操作Android触摸屏向设备发送控制、修改参数指令,通过透明串口传输模块发送至设备单片机串口,单片机执行指令。单片机定时读取设备当前状态参数,通过蓝牙转串口模块发送至Android设备,在触摸屏显示。
  5.结束语
  本文提出的Android透明串口传输模块,将蓝牙转串口、WiFi转串口和USB转串口这三种通信方式封装在一起,用户可以任意选择一种通信方式与下位机串口进行通信,而不必关心每种方式的不同实现细节,简化了Android工业控制应用程序开发,提高了开发效率。
  参考文献:
  [1]郑彪,汪秉文.串口通信在工业控制中的应用[J].自动化仪表,2002,23(4):58-59.
  [2]黄慧萍,肖世德,孟祥印.基于Android平台的步进电机远程控制系统[J].制造业自动化,2014,36(2):44-47,61.
  [3]李黎国,张辉,程号.基于Android健康服务终端蓝牙传输软件的设计[J].电子科技,2012,25(5):115-118.
  [4]向诚,谢峰粹.基于WiFi和Android的智能探测车设计[J].电子技术应用,2013,39(12):82-85.
  [5]赵春亭,左小五.基于Android系统的USB转串口的研究[J].工业控制计算机,2014,27(1):83-84.
  [6]朱冬梅,王铮,邓先灿.微机与多台单片机通信的多线程实现[J].计算机应用,2000,20(10):79-80.
  [7]李培培,朱维杰.基于Android车载虚拟仪表人机界面设计[J].电子科技,2013,26(2):74-75,78.
  作者简介:
  何塽纳(1989-),男(汉族),浙江省奉化人,杭州电子科技大学硕士生,主要研究方向为软件开发。
其他文献
诗的美与文体的美是相互依存的.从文体学的角度对佛罗斯特的诗<雪夜林中驻脚>进行剖析,通过解读此诗的文体形式,来品尝诗的艺术之美、内容之美,使诗的内涵得以充分的呈现,深
摘要:船坞泵房排水系统包括各种泵类及管道,其性能直接关系到人员和财产的安全,必须引起足够的重视。本文从安全的角度研究目前国内多家造船企业船坞泵房排水系统存在的安全隐患,分析产生安全隐患的多种原因,并提出具有实践性的建议改造方案。  关键词:船坞泵房;安全隐患;改造方案  1.安全隐患分析  船坞泵房的实质是船坞内与外部海域的媒介,坞内水通过船坞泵房排入海域,外部海域的海水以船舶压载水的形式通过船坞
摘要:辊子零件在试制过程中,出现硬质阳极氧化后φ22M6两个内孔尺寸超差问题。实验发现,氧化温度2°C时辊子零件基于内表面装卡的φ22M6内孔氧化膜厚度,装卡端内孔比另一端内孔的相差6um。通过优化卡具设计解决卡具烧损、实现在线检测及优化工艺规程,顺利解决辊子零件尺寸保证难题。  关键词:硬质阳极氧化;氧化膜;卡具;烧损;工艺规程;尺寸保证  在现代工业生产中,铝及铝合金由于其轻量化特性得到广泛应
本文阐述了汽车零部件耐久性试验样本数的确定方法,同时通过实例简要介绍了威布尔分布在耐久性试验合格性判定上的应用。
社会经济环境的改变和传统道路运输企业的经营现状决定了传统道路货运企业必须向现代物流企业转化.针对转化过程中存在的问题和困难,提出传统道路货运企业要达成共识,以物流
本文介绍了2种基于电动直线推杆的电动病床升降机构设计,并从运动原理,制造工艺及成本等方面进行对比分析突出说明2种升降机构各自的特点,以期能为国内的电动病床的设计提供相应
摘要:通过将传统自动售货机的存货机构改成具有一定倾角的光滑斜坡,货物利用自身重力在斜坡方向的分力下滑至送货机构的储物槽。送货机构是由两套平面四杆机构串联而成,从动杆设计成在极限位置近似停歇,方便消费者在出槽口取货。  关键词:自动售货机;“Y”门;串联;平面连杆机构;近似停歇  引言  目前,市场上的售货机普遍应用于罐装和瓶装类食品的出售,其送货主要通过简单的四杆机构将商品推出,其运动可以“垂直运
我国西部地区宗教问题比较突出,而且往往同民族问题交织在一起,是影响当地经济发展和社会稳定的重要因素.只有分析存在问题的症结,寻求解决的途径,才能维护西部地区的稳定,为
摘 要:了解和掌握色谱气相分析法,在电力系统中对变压器及带油的电气设备的运行状况是一个非常好的辅助判断工具。  关键词:平均产气速率X;总烃量;限量值  引言:  通过色谱气相分析法,能够使设备在不停运的情况下对其变压器器身状况进行全面的分析,并根据所出现的问题,采取必要的防范措施。  1.色谱分析变压器油方法  色谱气相分析法是近代迅速发展起来的一种新型的物化分离分析法,它是用气体作载体,把被分
摘要:在对液压安全联轴器工作原理进行简要分析的基础上,认为内套圈其工作过程中发挥着重要的作用。以某型液压安全联轴器为例,对内套圈在不同工况下的的变形情况进行了分析计算,得到了对应的设计公式,为液压安全联轴器的设计及优化提供了一个有效途径。同时,探讨了其加工制造以及使用过程中需要注意的相关问题,对提高液压安全联轴器的工作性能有一定的促进作用。  关键词:液压安全联轴器;优化设计;内套圈;制造  1.