0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

基于串口通信与单片机的远程控制机械臂设计

电子设计 来源:电子设计 作者:电子设计 2023-11-09 15:55 次阅读

网络化操作和远程控制成为很多企业和科研机构钻研的方向,要实现对现场设备进行管理和控制,就需要与这些设备进行通讯连接,进行相关数据交换,以达到管理、控制和监控的目的。同样嵌入式领域中,为了达到远程监控,也必须基于网络。在水下或者恶劣环境作业的机械手,在特定的时候需要远程控制。网络远程控制机械手进行作业成为了可能。

在远程控制中,通信是值得讨论的技术问题。传统的通信只是局限于脱离网络的通信,如两个 PC 机之间通信,或者是上位机为 PC 机,下位机为单片机。在远程控制机械手系统中,采用的是基于 Internet 的远程串口通信,远程串行通讯是指客户端与下位机或通讯对象之间通过串口进行的远距离通讯,而传统的远程通讯只是它其中的一部分,通过客户端传送指令给下位机至控制部件,从而实现远程监控。

1、远程串口通讯系统的基本构架及实现

(一)基本构架概述

在软件系统体系结构中,C/S 和 B/S 是当今世界开发模式技术架构的两大主流技术。

C/S 模式采用的是两层体系结构,即客户端和服务器,通过该架构可以充分利用两端硬件环境的优势,将任务合理分配到 Client 端和 Server 端来实现,客户端进行显示界面和事务处理,服务器进行数据处理和应答请求处理。在客户端需要安装客户端软件才能访问服务器。不但软件升级不便,而且也增加了客户端的负载和投资成本。

B/S(Browser/Server)结构即浏览器和服务器结构。它是随着 Internet 技术的兴起,对 C/S 结构的一种变化或者改进的结构。在这种结构下,用户工作界面是通过浏览器来实现,极少部分事务逻辑在前端(Browser)实现,但是主要事务逻辑在服务器端(Server)实现, 数据处理则由数据库服务器进行,形成所谓三层结构。这样就大大简化了客户端电脑载荷,减轻了系统维护与升级的成本和工作量,降低了用户的总体成本,但仅在 B/S 模式下还不能直接实现与被控对象进行数据通讯。

基于 B/S 模式实现与被控对象进行数据通讯的远程串行通讯采用四层体系结构,增加了一个控制层,浏览器端为表示层,WEB 服务器为功能层,数据库服务器为数据层,控制层为通过 WEB 服务器传送指令到控制服务器,控制服务器作为上位机,通过串口控制下位机,直到控制执行部件。这里不仅增加了控制层,而且对功能层和数据层也都进行了扩展。这种体系结构即具有 B/S 模式的优良特性,又增加了控制服务功能,充分利用了现有的网络资源和工业现场资源,并且使两者有机地结合在一起,达到了与被控设备通过串口进行远程通讯的目的。表示层、功能层、数据层和控制层既有一定的相互联系又具有相对独立性,各层是通过 Internet 相连接,通过 HTTP 协议和串口通讯协议进行信息通讯。如图 1 所示

(二)远程串口通讯各部件的功能及实现

(1)浏览器端:用户通过浏览器登陆 web 服务器,通过输入用户名和密码,和数据库中的数据比较验证通过后,成为合法的用户,然后在相应的表单中输入控制数据。按提交按钮后,数据传送到 web 服务器。浏览器端再作为显示端,能够显示远程执行部件的反馈位置。

(2)WEB 服务器:能够接收浏览器端发送过来的控制数据,并处理相应的数据后,把数据发送给控制服务器,或者直接作为控制服务器,通过串口把数据发送给执行部件。

(3)数据库服务器端:存放合法用户的用户名和密码,以进行检验。同时,在发送执行数据时,如果需要特定的转换数据,也可直接到数据库中获取。实现系统的数据处理,并把运行结果反馈给 web 服务器。

(4)控制服务器:作为直接通过串口发送命令给执行部件的上位机,或者直接由 web 服务器本身担任。接收 web 服务器从浏览器端接收过来的数据。通过串口通讯协议及握手信号,把数据发送给下位机。

(5)下位机:通过串口通讯协议接收控制服务器(上位机)的执行数据,再通过相应的驱动电路,带动执行部件工作。

(6)执行部件:按照传送过来的指令进行工作,并通过传感器把当前执行部件的位置和姿态化作数据再通过串口回送到控制服务器,直至到达浏览器端,使得用户不在执行部件的现场也可以远程控制并得到部件执行之后的效果

在浏览器中,登陆验证后,通过 HTTP 协议,把数据传送给 web 服务器,再传给控制服务器。控制服务器作为上位机,打开串口,通过通讯协议把数据发送给下位机。下位机根据通讯协议,收到上位机发送过来的数据,并启动 D/A 转换器,控制执行部件。同时通过传感器把执行部件的姿态反馈给上位机。下位机可以为单片机、DSPARM微处理器

2、远程控制作业机械手系统的实现

基于 web 的机械手的远程控制,在高温、水下等恶劣的工作环境下,需要远程控制机械手实行操作。在远程通过浏览器输入操纵数据,通过网络传送给主控机,主控机采用一般的 PC 机,主控机通过串口把数据发送给下位机,该作业机械手系统中采用 89C51 单片机作为直接控制计算机。现场通过监控设备把作业机械手的姿态反馈到远程控制机,同时通过传感器采集现场数据返回到控制机。图 2 为远程控制作业机械手的系统示意图。

在浏览器端登陆主控机担当的服务器,取得合法身份验证之后,发送数据。主控机收到信息后,通过串口把数据发给直接控制机 89C51。

(一) 单片机系统的硬件组成部分

(1) 以 89C51 为微处理器的为核心,扩展 RAM6254、锁存器、时钟电路、复位电路等。

(2) 串口通讯电路:主控机向 89C51 传送数据时,采用串口通信,常用的串行通信总线接口是美国电气协会 EIA 制定的 RS-232C。鉴于单片机串行口 TXD,RXD 均为 TTL 电平,而 PC 机配置的是 RS-232C 标准串行接口,在应用时,必须进行电平转换。在作业机械手控制系统中,采用 MAX232 作为接口转换芯片

(3) 数模转换电路:通过串口,主控机把机械手的动作指令数据发送给 89C51,89C51 通过总线把数据发送给 D/A 转换电路数据端口,在该系统中采用 DA0832 数模转换芯片来实现。

(4) 驱动电路:机械手的作业动力来自液压系统,采用伺服阀来实现对机械手的回路控制,为驱动伺服阀,设计相应的驱动电路

(5) 模数转换电路:用角度电位计和位移传感器采集机械手的实际操作数据,传感器标定之后,采集的位移量和角度模拟信号要转换数字信号传送给 89C51,再向上发送,该系统中采用 AD0809 模数转换芯片来实现。

(二) 主控机与单片机软件系统的实现

(1) 主控机程序

主控机由 PC 机担任,用 VC++开发操纵界面,通过串口控件 MSComm 对串口通讯协议进行串口初始化,从后台数据库 SQLServer 中提出从 WEB 发送的控制机械手的数据,控制机械手各个关节的执行的角度量,同时等待接收 89C51 回送回来的数据。软件系统的流程图如图 3 所示。

(2) 89C51 单片机主程序

89C51 作为直接控制计算机,用 C 语言来编写主程序,初始化串口,分配内存缓冲区存放接收数据,开中断,等待外部以中断形式进行数据的发送和接收。89C51 的主程序流程图如图 4 所示。

(3) 89C51 中断处理子程序

中断子程序中首先清除中断标志,然后判断是接收还是发送引起的中断,根据相应的中断源进行处理。89C51 中断处理子程序的流程图如图 5 所示。

3、 结束语

本文作者创新点在于把 89C51 单片机与机械手的作业联系起来,通过网络远程通信达到了远程控制机械手实验室的实现,为远程控制作业的研究提供了一个具体的实例参考,目前该系统实现了网上发送数据到主控机,存储在数据库中,需要手工在主控机调动数据来实现对机械手的控制。能够完全脱离人的介入,直接通过网络来控制作业还在进一步的研究中。实验应用和市场证明,在网络现代化的今天和未来,远程通信必将出现在未来的人类生活中,有可观的研究意义和实用价值。

审核编辑 黄宇

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

    关注

    6001

    文章

    43973

    浏览量

    620840
  • 串口通讯
    +关注

    关注

    1

    文章

    249

    浏览量

    24545
  • 机械臂
    +关注

    关注

    9

    文章

    471

    浏览量

    23827
收藏 人收藏

    评论

    相关推荐

    单片机上网,单片机以太网,单片机远程控制单片机TCPIP,direct net串口服务器

    下面以51单片机控制串口LED屏为例,示意单片机远程控制方案。我们知道现在LED显示屏在广告投放、信息播发以及***医院等单位都有广泛的
    发表于 06-27 21:54

    基于单片机的温度远程控制系统设计

    基于单片机的温度远程控制系统设计
    发表于 08-15 12:55

    两个单片机,CAN远程控制

    基于CAN总线的单片机远程控制!!A检测温度并显示,经过CAN总线,B高低温报警灯亮,继电器在之中起远程控制作用!问题来了,继电器该怎么
    发表于 04-16 20:44

    51单片机控制6个舵机的机械

    51单片机控制6个舵机的机械,现在我做的程序是通过zigbee模块用电脑键盘控制的,两个键字控制
    发表于 04-29 15:42

    制作51单片机控制的简易机械

    单片机控制机械,最终目标是自己设计一个属于自己的作品,但在这方面没有什么经验,所以希望各位大神帮忙指导,例如需要自学的知识、相关的网站或者资料
    发表于 05-11 21:25

    实现光敏控制远程控制,温度控制单片机

    实现光敏控制远程控制,温度控制单片机最好选哪一款
    发表于 03-29 18:32

    工业网关盒子 控制器485采集机械远程监测及程序升级

    视频网络服务器实时监控机械操作结果。基于TCP/IP网络的远程控制系统,需要在本地建立服务器端控制器。采用PC作为
    发表于 03-11 14:12

    基于51单片机WiFi温湿度远程控制 精选资料分享

    基于51单片机WiFi温湿度远程控制硬件STC89C52RC单片机最小系统ESP8266系列模块5V继电器模块蜂鸣器DHT11温湿度传感器软件keil4***it LED1=P1^0; //手动自动
    发表于 07-20 07:02

    如何用单片机无线远程控制BLDC并实时的反馈数据到串口

    咳咳,作为一个萌新,在这大佬云集的网站里瑟瑟发抖,但还是想发表一下最近成果:本次主要讨论如何用单片机无线远程控制BLDC并实时的反馈数据到串口,话不多说直接上代码:#include #define
    发表于 08-30 07:13

    介绍开发一个基于单片机的wifi通信远程控制的方法

    《《《《《正文》》》》》《前言》本文主要介绍开发一个基于单片机的wifi通信远程控制的方法,单片机只需支持UART
    发表于 11-19 08:47

    Linux单片机串口通信的相关资料分享

    实验总结程序组织串口调试Linux与单片机串口通信   近期要做一个机械的小项目,作为ROS和
    发表于 12-06 06:46

    基于单片机的三轴机械控制怎么实现

    文章目录三轴机械控制原理三轴机械接线三轴机械
    发表于 12-13 07:14

    51单片机怎么处理机械数据?

    51单片机怎么处理机械数据
    发表于 10-31 06:29

    基于多串口通信的视频矩阵切换器的远程控制

    本文分析了基于多串口通信的视频监控系统的功能结构,研究了矩阵切换器的远程控制原理,详细描述了使用MScomm 进行矩阵切换器的远程控制的实现过程,在实用中取得了不错的效
    发表于 06-01 15:52 31次下载

    基于TCP/IP 的七自由度机械远程控制

    针对七自由度机械远程控制的需要,构建了基于TCP/IP 网络的控制系统。首先通过设计单片机系统实现本地端控制,然后运用WinSockets
    发表于 08-15 16:01 22次下载