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

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

3天内不再提示

基于PIC单片机和PSC控制器实现机器人控制系统的设计

电子设计 来源:微计算机信息 作者:赵涓涓,李强 2021-04-07 10:52 次阅读

1.前言(Introdution)

随着当今科技的不断发展,机器人应用领域的不断扩展,人们对机器人的控制越来越想方便、快捷。基于PC 的机器人控制系统极大的促进了机器人的遥操作技术。基于VC++.NET的机器人控制平台的设计,提高了系统的人机交互性和可扩展性。

本文将 PC 机与单片机结合,综合应用了两者的优势,互补了彼此的缺陷,设计了一套机器人控制系统。上位机(PC 机)主要采用VC++.NET 设计了可视化的机器人控制平台,简洁明了,控制快捷;下位机(单片机控制系统)主要采用PIC 单片机和PSC(Parallax ServoController)电机控制器,采用模块化递阶控制技术融合传感器技术,运用汇编语言,通过键盘控制,完成了机器人的各种行走功能,同时还通过液晶显示芯片1602 来显示机器人当前的工作状态;本研究采用的试验移动机器人是德普施科技有限公司的DRROB 系列高级机器人产品——六足机器人。

2.系统硬件设计(The design of system hardware)

2.1 系统硬件的总体设计:

基于前言部分所描述机器人控制系统功能,初步分析该系统由以下几个模块组成:单片机最小系统模块(PIC 单片机为核心,扩展了一片EEPROM 芯片24LC16B),串行通信模块,直流伺服电机驱动模块,键盘控制模块,液晶显示模块及传感器检测模块等。列出部分主要模块电路图。其控制系统总体框图如图1 所示。

o4YBAGBtHzmAPmHWAAB9qL_Ixwo367.png

2.2 通信电路模块:

采用 MAX232 实现电平转换,其连接采用简单的零调制三线经济型。其电路如图2 所示。

o4YBAGBxRc-AS5TuAAHQqCmRzJo130.png

图2 通信电路

2.3 电机驱动电路模块:

采用 PSC 电机控制器作为电机驱动模块的硬件基础,此控制器采用数据分配器芯片一个、信号接收端口一个、复位按钮一个、单刀双掷开关一个,+5V 伺服电源入口一个。PSC电机控制器是一个1/16 线的数据分配器,通过串口通信将接收来的控制信息分成16 路,经译码后可发送给16 个电机驱动器芯片,在这里我们使用其中12 个端口。六足机器人的基本动作是由12 个直流伺服电机协同动作完成,伺服电机采用减速装置,旋转电位计和H 桥实现精确的位置半闭环控制。Serial(信息接收端口)与PIC 微控制器的P15 端口相连,接受控制信号。其电路如图3 所示。

pIYBAGBxRcmAEy7QAAJtTYKKruY262.png

图 3 电机驱动模块

2.4 机器人红外避障模块:

采用了一个简单但应用普遍的电路。在该电路中采用了常用的红外发射管D1 和接收管Q1,通过改变电阻R1 可以调节发射管的功率,通过测量D1 的电压可以计算出机器人距离目标或者障碍物的距离。其电路图略。

2.5 液晶显示模块:

采用 1602 液晶显示模块,该模块内部的字符发生存储器(CGROM)已经存储了160 个不同的点阵字符图形,这些字符有:阿拉伯数字、英文字母的大小写、常用的符号、和日文假名等,每一个字符都有一个固定的代码,它的读写操作、屏幕和光标的操作都是通过指令编程来实现的。此模块的作用是可以显示当前的状态,实现机器人的人机交互显示功能。其电路略。

3.系统软件设计(The design of system software)

该系统的软件设计分为两个部分:上位机软件和下位机软件。上位机采用高级语言VC++.NET 来实现,而下位机采用汇编语言来实现。

3.1 上位机软件实现

在 WINDOWS 环境下,用户不能直接对PC 的串行端口进行操作。Visual C++.NET 中,通过使用微软公司提供的Microsoft Comm Control 控件(简称MSComm),可以方便地实现PC 与外部设备之间的串行通信,编程工作量相对较少。串行通信控件MSComm 有二种处理通信的工作方式:事件驱动方式和查询工作方式。事件驱动方式是指:当串行端口接收或发送完指定数量数据以及发生通信错误等情况时,MSComm 控件触发OnComm 事件,作出相应处理。查询工作方式是指:通过查询控件的某些属性值(如InBufferCount 属性)来作出进一步的处理。本设计实现采用事件驱动方式来发送接收数据。上位机程序主要包括初始化程序,控制代码发送程序,机器人各种动作控制程序等。(代码略)

3.2 下位机软件实现

下位机程序主要由:主程序,机器人各动作的子程序,数据(控制字)传送子程序,来自上位机的信号接受程序,延时程序等。其中最重要的就是机器人的各动作子程序(六足机器人涉及到12 个电机):使用PIC 单片机的扩展芯片EEPROM 数据存储区存储机器人每个动作对应的各电机的输入脉冲宽,建立一个数据指针ptrEEPROM,采用查表方式读取,然后通过串行通信写入PSC 电机控制器。控制系统主程序流程图如图4 所示。

o4YBAGBxRcKAU0eSAAB-t7EiBdA868.png

图 4 系统主程序流程图

4.系统试验机器人样机及最终硬件实物图(The robot’s sketch map for test and the final systemhardware photo)

该系统采用的机器人结构:以一曲柄摇杆机构和连杆机构作为腿部和六足,以12 个直流伺服电机作为驱动元件。利用德普施科技有限公司的六足机器人包搭接出的机器人。机器人机构示意图及设计最终的下位机硬件图如图5 所示。

pIYBAGBxRb2AFdtcAAHLI65V5dE465.png

a.六足机器人机构示意图 b.系统下位机的硬件图

图5 机器人最初和最终状态图

系统上位机控制界面如图6 所示(通过键盘发送相应控制状态或点击机器人动作演示中相应的动作按钮,使机器人动作,同时在接受数据窗口可以显示出当前机器人的运动状态)。

o4YBAGBxRbeAEzEYAADenD87hGk305.png

图 6 系统上位机控制界面

5.结论(Conclusion)

本文完成所有的软、硬件设计并对机器人样机进行调试后,能够使机器人很好地完成各种预设的动作,运动灵活、可靠。

由论文工作可得:控制系统的电机驱动电路采用一片数据分配器芯片,提高了控制的精确性;运用PIC 单片机技术,并综合红外传感技术,增强了机器人研究领域的环境感知和人机交互功能;采用新型的VC++.NET 平台编写程序,突出了机器人研究领域的通信技术功能,相对VC++.6.0 更加提高了控制系统的扩展性,同时也更好地提高了工业控制的自动化水平。有很好的推广价值。

本文作者创新点:控制系统的电机驱动电路采用一片数据分配器芯片,提高了控制的精确性;采用新型的VC++.NET 平台编写程序,相对VC++.6.0 更加提高了控制系统的扩展性,同时也更好地提高了工业控制的自动化水平。有很好的推广价值。

责任编辑:gt

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

    关注

    6030

    文章

    44500

    浏览量

    632232
  • 控制系统
    +关注

    关注

    41

    文章

    6517

    浏览量

    110397
  • 机器人
    +关注

    关注

    210

    文章

    28132

    浏览量

    205918
收藏 人收藏

    评论

    相关推荐

    基于MC68HC08系列单片机机器人追跑控制系统设计

    机器人的电路设计基本相同,都是由单片机系统、红外收发模块、电机控制模块和语音模块构成,其不同是红外线发射管和接收管阵列的排列有所不同。单片机
    发表于 04-13 09:48

    如何利用ARM研究嵌入式服务机器人控制器

    其设计是机器人研究的核心。该控制系统通常以MCU、 DSP等为核心,采用上、下位二级分布式结构。其中上位一般为PC,下位
    发表于 07-30 07:02

    机器人控制系统

    1、机器人控制系统控制”的目的是使被控对象产生控制者所期望的行为方式。 .“控制”的基本条件是了解被控对象的特性。 “实质”是对驱动
    发表于 09-13 08:40

    什么是机器人控制系统

    什么是机器人控制系统机器人的运动控制系统包含哪些方面?机器人控制系统的基本功能有哪些?
    发表于 10-11 09:38

    如何使用树莓派开发智能机器人控制系统

    树莓派和其他机器人控制器有何不同?如何使用树莓派开发智能机器人控制系统
    发表于 12-23 06:55

    通过多轴工业机器人来聊聊机器人控制系统以及控制器实现

    机器人控制系统当中。那么今天,我们就通过多轴工业机器人来聊聊机器人控制系统以及控制器
    发表于 02-24 17:05

    小型仿人机器人控制系统设计

    本文提出了一种以ARM9 为主控制器的新型的仿人机器人分布式控制系统单片机和外部计数组成关节控制器
    发表于 05-25 15:57 45次下载

    单片机自动巡线轮式机器人控制系统设计

    单片机自动巡线轮式机器人控制系统设计     轮式移动机器人机器人研究领域的一项重要内容.它集机械、电子、
    发表于 02-25 10:55 1002次阅读
    <b class='flag-5'>单片机</b>自动巡线轮式<b class='flag-5'>机器人</b><b class='flag-5'>控制系统</b>设计

    基于AVR的比赛机器人控制系统研究

    摘要:提出了一种基于AVR单片机Atmega8为核心控制器的比赛机器人控制系统,通过比赛机器人的特征分析,阐述了构成
    发表于 02-11 15:06 87次下载

    基于单片机的洗浴服务机器人控制系统设计

    利用51系列单片微型计算机实现洗浴服务 机器人 控制系统的设计。以单片机芯片AT89C51作为核心控制器
    发表于 06-08 15:42 112次下载
    基于<b class='flag-5'>单片机</b>的洗浴服务<b class='flag-5'>机器人</b><b class='flag-5'>控制系统</b>设计

    智能机器人单片机控制系统

    机器人单片机控制系统的设计与实现进行探究,小仅可以推动我国科学技术的发展,而且还为之后的学习与工作打下良好基础。 所谓智能机器人,是利用甲.
    发表于 01-27 12:21 5次下载

    控制器是工业机器人的核心控制系统

    工业机器人是一个复杂的集成系统机器人本体就是它的身体,眼睛就是它的视觉系统等等,今天我们来说一下,工业机器人的“大脑”——
    发表于 09-30 11:32 3556次阅读

    机器人控制系统分类_机器人控制系统有哪些

    机器人控制系统,就相当于人体的大脑,是机器人的核心组成部分。关于机器人控制系统有哪些分类呢?机器人
    发表于 11-04 08:45 2.6w次阅读

    基于双串口单片机的上肢康复机器人交互控制系统

    基于双串口单片机的上肢康复机器人交互控制系统
    发表于 06-29 14:47 13次下载

    基于PIC单片机的起爆控制系统

    电子发烧友网站提供《基于PIC单片机的起爆控制系统.pdf》资料免费下载
    发表于 10-30 09:39 0次下载
    基于<b class='flag-5'>PIC</b><b class='flag-5'>单片机</b>的起爆<b class='flag-5'>控制系统</b>