CN100362496C - 一种分布式水下机器人控制方法 - Google Patents

一种分布式水下机器人控制方法 Download PDF

Info

Publication number
CN100362496C
CN100362496C CNB2003101052005A CN200310105200A CN100362496C CN 100362496 C CN100362496 C CN 100362496C CN B2003101052005 A CNB2003101052005 A CN B2003101052005A CN 200310105200 A CN200310105200 A CN 200310105200A CN 100362496 C CN100362496 C CN 100362496C
Authority
CN
China
Prior art keywords
node
network
data
driver
program
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CNB2003101052005A
Other languages
English (en)
Other versions
CN1622062A (zh
Inventor
马骥
李一平
李硕
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenyang Institute of Automation of CAS
Original Assignee
Shenyang Institute of Automation of CAS
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shenyang Institute of Automation of CAS filed Critical Shenyang Institute of Automation of CAS
Priority to CNB2003101052005A priority Critical patent/CN100362496C/zh
Publication of CN1622062A publication Critical patent/CN1622062A/zh
Application granted granted Critical
Publication of CN100362496C publication Critical patent/CN100362496C/zh
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Manipulator (AREA)
  • Small-Scale Networks (AREA)

Abstract

一种分布式水下机器人控制方法,采用RS-485网络作为分布式控制的核心,由计算机主机节点和RS-485网络节点组成,其中计算机主机节点将任务分散到各个网络节点执行,它包括计算机主机和RS-232/RS-485转换器,RS-485网络节点以单片机为核心,主要包括系统状态检测节点、设备电源控制节点、电源管理节点、电机控制节点、应急处理节点、数据采集节点、串口设备节点,各个网络节点主要负责传感器的数据采集和处理、携带设备的控制、电池检测、电机驱动控制、故障检测、漏水检测、应急处理任务;计算机主机节点以及所有的RS-485网络节点都通过RS-485接口连接在一起,构成RS-485网络;软件由计算机主机程序和各单片机程序组成。本发明具有模块化、可扩展性强、组态灵活、可靠性高等优点。

Description

一种分布式水下机器人控制方法
技术领域
本发明涉及水下机器人控制技术,具体地说是一种分布式水下机器人控制方法,它属于用在水下机器人控制的计算机控制设备。
背景技术
常规的水下机器人控制系统,特别是自治水下机器人控制系统,多采用集中式控制方式来实现机器人的控制,即由主控计算机实现对所有传感器和设备的数据采集及控制,主控计算机通过模拟/数字转换电路采集电压、电流等模拟量信号,通过数字量输入电路采集设备开关信号,通过串口电路采集串口设备的数据,主控计算机将这些数据进行处理后,通过数字/模拟转换电路输出控制量驱动电机,通过数字量输出电路输出开关信号对设备进行控制。因而集中式控制方式下主控计算机的任务繁重,效率也低;一旦主控计算机出现故障,整个控制系统将会瘫痪,系统的可靠性低;由于主控计算机的数据采集通道、地址和中断资源以及水密电缆的芯数是有限的,很难随意的增加设备或传感器,系统的可扩展性差。随着电子技术、传感器技术、通讯技术的发展,水下机器人能搭载的传感器越来越多,完成的使命也日趋复杂,传统的集中式控制方法无法满足水下机器人控制系统发展的需求。
发明内容
为了克服上述不足,本发明的目的是提供一种具有可扩展性强、组态灵活、软件通用性好、工作效率高、安全性高、可靠性高的分布式水下机器人控制方法。
为了实现上述目的,本发明的技术方案是:采用RS-485网络作为分布式控制的核心,硬件由计算机主机节点和RS-485网络节点组成,其中计算机主机节点包括计算机主机和RS-232/RS-485转换器,RS-485网络节点以单片机为核心,主要包括系统状态检测节点、设备电源控制节点、电源管理节点、电机控制节点、应急处理节点、数据采集节点、串口设备节点;计算机主机节点以及所有的RS-485网络节点都通过RS-485接口连接在一起,构成RS-485网络;软件由计算机主机程序和各单片机程序组成,其中计算机主机程序包括RS-485网络驱动程序、各RS-485网络节点驱动程序、RS-485用户接口库函数、上层控制软件,单片机程序主要包括系统状态检测程序、设备电源控制程序、电源管理程序、电机控制程序、应急处理程序、数据采集程序、串口设备程序;
其中:计算机主机的串口通过RS-232/RS-485转换器连接到RS-485网络节点的单片机串口通过RS-485驱动芯片连接到RS-485网络上;
所述RS-485网络驱动程序负责驱动RS-232/RS-485转换器,采用消息通信方法实现RS-485网络节点驱动程序与单片机程序的数据交换;具体流程为:启动后首先注册程序名,设置时间中断和串口中断,然后程序进入循环等待状态,如果定时时间到,则产生时间中断的消息,RS-485网络驱动程序判断上次是否成功接收到数据,如果成功则经执行分配执行任务1~任务n中的某一任务,即设置当前任务为与某一RS-485网络节点驱动程序进行信息交换,然后计算校验和并向RS-485网络发送串口数据,发送完毕程序处于循环等待消息状态,如果接收到串口数据则产生串口中断消息,如果数据接收成功并且正确则把数据发送给该RS-485网络节点驱动程序;如果定时时间到时仍未接收到的正确数据,则重新通信,如仍没有接收到正确数据,则认为该节点故障,并把故障通过信息交换发送到该RS-485网络节点驱动程序;程序中的任务1~任务n是一个任务列表,RS-485网络节点驱动程序根据一个从1至n的计数器来决定执行什么任务,即与某个节点进行通信,这个任务列表可以根据对不同节点的不同采样频率要求而制定;
所述RS-485网络节点驱动程序包括系统状态检测节点、设备电源控制节点、电源管理节点、电机控制节点、应急处理节点、数据采集节点、串口设备节点驱动程序,每个RS-485网络节点驱动程序负责实现对该RS-485网络节点设备的控制,各个RS-485网络节点驱动程序的结构相同;具体流程为启动后首先注册程序名,然后进入等待消息的循环中;如果接收到RS-485驱动程序的消息,则与RS-485驱动程序进行数据交换;如果接收到用户接口库发送的消息,则根据消息的内容进行判断任务类型;任务共有两种类型:读取数据命令和控制输出数据命令,如果是读取数据命令,RS-485网络节点驱动程序就把相应的数据进行处理为工程量,如果是控制输出数据命令,就把从用户接口库中接收的数据进行处理并存储在内存中,等到与RS-485驱动程序交换数据时发送给RS-485网络节点;在执行完上述读取或控制任务后,RS-485网络节点驱动程序与接口库函数交换数据,把获得的数据以及故障代码发送给用户接口库函数;
所述RS-485网络节点的单片机程序通过RS-485网络与计算机主机节点通信,根据计算机主机节点的命令进行动作,并将数据发送给计算机主机节点;每个RS-485网络节点的单片机程序具体流程为:单片机程序运行时先执行初始化,然后等待串口中断,在串口中断中,程序接收RS-485网络的数据并根据接收的命令进行执行,并向RS-485网络发送数据;在定时器中断中,单片机程序根据不同节点的需要同时执行数据采集、控制输出、计算、数据存储任务;
所述RS-485用户接口库函数采用目标文件形式提供给用户编制的上层控制软件调用,通过消息通信方法和共享内存方法实现对各RS-485网络节点驱动程序数据的访问。
与现有技术相比,本发明更具有如下优点:
1.系统工作效率高。本发明是一种基于RS-485总线的分布式水下机器人控制方法,它以总线形式的把计算机主机的集中式控制任务分散到各个传感器和设备节点执行,可以将主控计算机的一部分任务分散到各个网络节点来实现,大大减轻了主控计算机的任务,实现系统效率的提高。
2.安全性高,采用本发明一旦主控计算机出现故障,故障应急节点可以独立的工作,完成应急处理工作,这样做极大的提高了水下机器人的安全性。
3.可靠性高。本发明采用总线网络形式后每个节点的连线只有电源线和数据线,大大减少了水密电缆的数量和芯数,从而减少了水密接插件漏水和线路故障的概率。
4.软件通用性好。本发明程序采用模块化设计,它具有开放式的架构,组态灵活,可任意增加或减少所携带的传感器和设备,又不会造成系统硬件线路的大幅改动,所以可扩展,易移植,既可用于有缆水下机器人控制,又可用于无缆水下机器人控制,应用范围广。
5.系统扩展性强。采用本发明预增减传感器或设备节点时,只须将其接入总线网络中并运行该节点的驱动程序,无须对主控计算机硬件进行更改,该总线上的最大节点数可以为128个。
附图说明
图1是本发明的硬件组成框图。
图2-1是本发明的系统状态检测节点硬件结构图。
图2-2是本发明的系统状态检测节点硬件原理图。
图3-1是本发明的设备电源控制节点硬件结构图。
图3-2是本发明的设备电源控制节点硬件原理图。
图4-1是本发明的电源管理节点硬件结构图。
图4-2是本发明的电源管理节点硬件原理图。
图5-1是本发明的电机控制节点硬件结构图。
图5-2是本发明的电机控制节点硬件原理图。
图6-1是本发明的应急处理节点硬件结构图。
图6-2是本发明的应急处理节点硬件原理图。
图7-1是本发明的数据采集节点硬件结构图。
图7-2是本发明的数据采集节点硬件原理图。
图8-1是本发明的串口设备节点硬件结构图。
图8-2是本发明的串口设备节点硬件原理图。
图9是本发明的软件组成框图。
图10是本发明的计算机主机RS-485网络驱动程序软件流程图。
图11是本发明的计算机主机各RS-485网络节点驱动程序软件流程图。
图12是本发明的各单片机节点软件流程图。
具体实施方式
下面结合附图和实施例对本发明作进一步详细说明。
本发明采用RS-485网络作为分布式控制的核心,硬件由计算机主机节点、多个单片机组成的RS-485网络节点组成,其中计算机主机节点包括计算机主机和RS-232/RS-485转换器,RS-485网络节点主要包括系统状态检测节点、设备电源控制节点、电源管理节点、电机控制节点、应急处理节点、数据采集节点、串口设备节点;计算机主机节点以及所有的RS-485网络节点都通过RS-485接口连接在一起,构成RS-485网络;软件由计算机主机程序和各RS-485网络节点的单片机程序组成,其程序包括RS-485网络驱动程序、各RS-485网络节点驱动程序、RS-485用户接口库函数组成,RS-485用户接口库采用目标文件的形式提供给用户编制的上层控制软件调用。
计算机操作系统为QNX,程序采用WATCOM C语言编制,单片机程序采用C语言编制,储存在单片机的电可擦除存储器里。
如图1所示,计算机主机的串口通过RS-232/RS-485转换器连接到RS-485网络上,与各个RS-485网络节点通信,计算机主机负责水下机器人的运动控制、使命下载、数据记录、与各个单片机节点的信息交互等任务,RS-232/RS485转换器实现计算机主机串口RS-232与RS-485之间的硬件电平转换,实现计算机主机串口波特率(9600bps~115200bps)与RS-485网络波特率(250kbps)的转换;各RS-485网络节点的单片机串口通过RS-485驱动芯片(如:MAX487)连接到RS-485网络上,每个RS-485网络节点根据其实现功能的不同,配备不同的外设,如A/D、D/A、I/O驱动等。
如图2-1所示,系统状态检测节点以单片机为核心,负责检测计算机系统的工作电压、压力舱压力、漏水状态、水下机器人入水状态等,并通过串口连接到RS-485驱动芯片,实现RS-485接口与RS-485网络交换数据。如图2-2所示,第1单片机DA1-2采用AT90S8535芯片,通过端子J1-3的A/D0~A/D2三个通道检测计算机系统的工作电压,通过端子J1-3的A/D3~A/D7五个通道检测压力舱压力、温度等信号,通过端子J1-4的DI1~DI4检测四路漏水信号,通过端子J1-4的DI5检测水下机器人入水信号,第1单片机DA1-2的串口连接到第1RS-485驱动芯片DA1-1,第1RS-485驱动芯片DA1-1通过端子J1-2与RS-485网络连接。另外端子J1-1用于单片机程序的在线下载(以下同)。
如图3-1所示,设备电源控制节点以单片机为核心,通过RS-485接口接收计算机主机的命令,根据命令驱动各个设备的电源继电器开启或关闭,同时检测各个设备电源的开闭状态。如图3-2所示,第2单片机DA2-2采用AT90S8535芯片,第2单片机DA2-2通过第1~4继电器K2-1~K2-4控制端子J2-3电源的通断,并通过电阻反馈检测电源的开关状态,第2单片机DA2-2的串口与第2RS-485驱动芯片DA2-1连接,第2RS-485驱动芯片DA2-1通过端子J2-2连接到RS-485网络。
如图4-1所示,电源管理节点以单片机为核心,负责检测电池电压、电流、温度、压力及漏水状态,对消耗功率进行计算和存储,并将数据通过RS-485接口发送到计算机主机。如图4-2所示,第3单片机DA3-2采用AT90S8535芯片,第3单片机DA3-2通过DA3-3(采用AD590芯片)检测温度信号,通过端子J3-3的A/D1、A/D2检测两路电池电压信号,通过端子J3-3的A/D3~A/D6检测电池电压、电流、温度、压力四路信号,通过端子J3-4检测两路漏水信号,第3单片机DA3-2的串口连接到第3RS-485驱动芯片DA3-1,第3RS-485驱动芯片DA3-1通过端子J3-2连接到RS-485网络。
如图5-1所示,电机控制节点以单片机为核心,通过RS-485接口接收计算机主机的命令,根据命令驱动各个电机的电源开启或关闭,控制D/A驱动电机驱动模块,同时单片机检测电机故障状态,通过A/D采集电机工作电流、电机驱动模块温度,并通过RS-485接口向计算机主机发送。如图5-2所示,第4单片机DA4-2采用AT90S8535芯片,第4单片机DA4-2通过温度传感器DA4-3检测温度信号,通过端子J4-4的A/D1~A/D4检测四路电机电流信号,通过第1~2数/模转换器DA4-4、DA4-5(采用AD7303芯片)输出四路模拟电压信号到端子J4-5作为电机驱动的给定电压信号,通过第5~8继电器K4-1~K4-4控制四路电机的电源输出到端子J4-6,通过端子J4-3检测四路电机故障信号,第4单片机DA4-2的串口连接到第4RS-485驱动芯片DA4-1,第4RS-485驱动芯片DA4-1通过端子J4-2连接到RS-485网络。
如图6-1所示,应急处理节点以单片机为核心,单片机一个串口与RS-485驱动芯片连接,组成RS-485接口,另一个串口与无线电台连接,用于控制无线电台发送,它可以在计算机主机故障时独立的工作,并在水下机器人浮出水面后,控制无线电台发送。如图6-2所示,第5单片机DA5-2采用AT90S8535芯片,第5单片机DA5-2通过端子J5-3检测两路电压信号,通过端子J5-4检测漏水信号,通过第9~10继电器K5-1~K5-2输出两路电源到端子J5-5,通过端子J5-6控制无线电台,第5单片机DA5-2的串口连接到第5RS-485驱动芯片DA5-1,第5RS-485驱动芯片DA5-1通过端子J5-2连接到RS-485网络。
如图7-1所示,数据采集节点以单片机和高精度A/D转换器为核心,可以采集深度计、高度计等模拟量,并将采集数据通过RS-485网络发送给计算机主机。如图7-2所示,第6单片机DA6-2采用AT90S2313芯片,第6单片机DA6-2通过第1模/数转换器DA6-4(采用AD7714芯片)采集端子J6-3引入的电压信号,第6单片机DA6-2的串口连接到第6RS-485驱动芯片DA6-1,第6RS-485驱动芯片DA6-1通过端子J6-2连接到RS-485网络。
如图8-1所示,串口设备节点一个串口与RS-485驱动芯片连接,组成RS-485接口,另一个串口与RS-232驱动芯片连接,组成RS-232接口,该节点主要功能是将RS-232的设备接入RS-485网络,它实现RS-232和RS-485电平及协议的转换,该节点可以连接GPS、高度计、电子罗盘等串口设备。如图8-2所示,第7单片机DA7-2采用AT90S2313芯片,第7单片机DA7-2的PD2、PD3管脚连接到第7RS-232驱动芯片DA7-3,第7RS-232驱动芯片DA7-3通过端子J7-3连接到RS-232串口设备,第7单片机DA7-2的串口连接到第7RS-485驱动芯片DA7-1,第7RS-485驱动芯片DA7-1通过J7-2连接到RS-485网络。
如图9所示,软件由计算机主机程序和各单片机程序组成,计算机主程序包括RS-485网络驱动程序、各RS-485网络节点驱动程序、RS-485用户接口库函数,RS-485网络驱动程序负责驱动RS-232/RS-485转换器,采用消息通信方法实现RS-485网络节点驱动程序与各单片机节点程序的数据交换;RS-485网络节点程序包括系统状态检测节点、设备电源控制节点、电源管理节点、电机控制节点、应急处理节点、数据采集节点、串口设备节点等驱动程序,每个驱动程序负责实现对该节点设备的控制;RS-485用户接口库函数提供给用户编制的上层控制软件调用,通过消息通信方法和共享内存方法实现对各RS-485网络节点驱动程序数据的访问;RS-485网络驱动程序和各RS-485网络节点驱动程序都可以独立运行,在计算机主机上电后,系统自动加载执行RS-485网络驱动程序和各RS-485网络节点驱动程序,也可以在系统运行当中,根据硬件设备节点的使用情况用程序控制各RS-485网络节点驱动程序的启停;RS-485用户接口库函数采用目标文件的形式提供,上层控制软件通过与RS-485用户接口库函数一起编译实现对RS-485网络设备的访问,在调用RS-485用户接口库函数时会返回一个代码,它代表了故障状态信息;单片机程序采用C语言编制,汇编后储存在单片机的电可擦除存储器里,上电后自动运行,然后与其它节点进行通信,接收其它节点的命令并进行操作,每个单片机节点都有一个固定的地址,其范围从0到127,用以区分不同的节点。
如图10所示,RS-485网络驱动程序负责驱动RS-232/RS-485转换器,采用消息通信方法实现RS-485网络节点驱动程序与各单片机节点程序的数据交换;具体流程为:启动后首先注册程序名,设置时间中断和串口中断,然后程序进入循环等待状态,如果定时时间到(如30毫秒),则产生时间中断的消息,程序判断上次是否成功接收到数据,如果成功则经执行分配执行任务1~任务n中的某一任务,即设置当前任务为与某一驱动程序进行信息交换,然后计算校验和并向RS-485网络发送串口数据,发送完毕程序处于循环等待消息状态,如果接收到串口数据则产生串口中断消息,如果数据接收成功并且正确则把数据发送给该节点的驱动程序;如果定时时间到时仍未接收到某节点的正确数据,则重新通信,如仍没有接收到正确数据,则认为该节点故障,并把故障通过信息交换发送到该节点驱动程序;程序中的任务1~任务n是一个任务列表,程序根据一个从1至n的计数器来决定执行什么任务,即与某个节点进行通信,这个任务列表可以根据对不同节点的不同采样频率要求而制定。
RS-485网络节点程序具体流程包括系统状态检测节点、设备电源控制节点、电源管理节点、电机控制节点、应急处理节点、数据采集节点、串口设备节点等驱动程序,每个驱动程序负责实现对该节点设备的控制。各个网络节点驱动程序的结构基本一样,如图11所示,程序启动后首先注册程序名,然后进入等待消息的循环中。如果接收到RS-485驱动程序的消息,则与RS-485驱动程序进行数据交换;如果接收到用户接口库发送的消息,则根据消息的内容进行判断任务类型。任务共有两种类型:读取数据命令和控制输出数据命令,如果是读取数据命令,程序就把相应的数据进行处理为工程量,如果是控制输出数据命令,就把从用户接口库中接收的数据进行处理并存储在内存中,等到与RS-485驱动程序交换数据时发送给RS-485网络节点。在执行完上述任务后,程序与接口库函数交换数据,把获得的数据以及故障代码发送给用户接口库函数。
单片机程序采用C语言编制,汇编后储存在单片机的电可擦除存储器里,上电后自动运行,然后与其它节点进行通信,接收其它节点的命令并进行操作。根据各节点完成任务的不同,程序中执行的命令不同,但是每个RS-485网络节点节点的单片机程序结构基本一样,如图12所示,具体流程为:程序运行时先执行初始化,然后等待串口中断,在串口中断中,程序接收RS-485网络的数据并根据接收的命令进行执行,并向RS-485网络发送数据,在定时器中断中,程序根据不同节点的需要同时执行数据采集、控制输出、计算、数据存储等任务。
所述计算机主机采用常规带有串口的低功耗、小体积工控机,如STD、PC/104工控机等。RS-232/RS-485转换器以及单片机A/D、D/A、外围电路接口技术为现有电子技术,单片机可以采用51系列、PIC系列、AT90系列等常规单片机实现。
总之,本发明以总线形式的把计算机主机的集中式控制任务分散到各个传感器和设备节点执行,从而使计算机主机任务减轻,系统效率提高;一旦计算机主机出现故障,应急处理节点可以独立的工作,完成应急处理工作,因此系统的可靠性高;它具有开放式的架构,可任意增加或减少所携带的传感器和设备,不会造成系统硬件线路的大幅改动,同时它还减少了水密电缆的芯数,减少电缆接触不良或电缆接头漏水的概率。

Claims (2)

1.一种分布式水下机器人控制方法,其特征在于:采用RS-485网络作为分布式控制的核心,硬件由计算机主机节点和RS-485网络节点组成,其中计算机主机节点将任务分散到各个RS-485网络节点执行,计算机主机节点包括计算机主机和RS-232/RS-485转换器,各个RS-485网络节点以单片机为核心,包括系统状态检测节点、设备电源控制节点、电源管理节点、电机控制节点、应急处理节点、数据采集节点、串口设备节点;其中,系统状态检测节点负责检测计算机系统的工作电压、压力舱压力、漏水状态、水下机器人入水状态;设备电源控制节点驱动各个设备的电源继电器开启或关闭,检测各个设备电源的开闭状态;电源管理节点负责检测电池电压、电流、温度、压力及漏水状态,对消耗功率进行计算和存储;电机控制节点检测电机故障状态,采集电机工作电流、电机驱动模块温度;应急处理节点控制无线电台发送;数据采集节点采集深度计、高度计的模拟量;串口设备节点实现RS-232和RS-485电平及协议的转换;计算机主机节点以及所有的RS-485网络节点都通过RS-485接口连接在一起,构成RS-485网络;软件由计算机主机程序和各单片机程序组成,其中计算机主机程序包括RS-485网络驱动程序、各RS-485网络节点驱动程序、RS-485用户接口库函数、上层控制软件,单片机程序包括系统状态检测程序、设备电源控制程序、电源管理程序、电机控制程序、应急处理程序、数据采集程序、串口设备程序;
所述RS-485网络驱动程序负责驱动RS-232/RS-485转换器,采用消息通信方法实现RS-485网络节点驱动程序与单片机程序的数据交换;具体流程为:启动后首先注册程序名,设置时间中断和串口中断,然后程序进入循环等待状态,如果定时时间到,则产生时间中断的消息,RS-485网络驱动程序判断上次是否成功接收到数据,如果成功则经执行分配执行任务1~任务n中的某一任务,即设置当前任务为与某一RS-485网络节点驱动程序进行信息交换,然后计算校验和并向RS-485网络发送串口数据,发送完毕程序处于循环等待消息状态,如果接收到串口数据则产生串口中断消息,如果数据接收成功并且正确则把数据发送给该RS-485网络节点驱动程序;如果定时时间到时仍未接收到RS-485网络节点的正确数据,则重新通信,如仍没有接收到正确数据,则认为该RS-485网络节点故障,并把故障通过信息交换发送到该RS-485网络节点驱动程序;RS-485网络驱动程序中的任务1~任务n是一个任务列表,RS-485网络驱动程序根据一个从1至n的计数器来决定执行什么任务,即与某个RS-485网络节点进行通信,这个任务列表能够根据对不同RS-485网络节点的不同采样频率要求而制定;
所述RS-485网络节点驱动程序包括系统状态检测节点、设备电源控制节点、电源管理节点、电机控制节点、应急处理节点、数据采集节点、串口设备节点驱动程序,每个RS-485网络节点驱动程序负责实现对对应的RS-485网络节点设备的控制,各个RS-485网络节点驱动程序的结构相同;具体流程为启动后首先注册程序名,然后进入等待消息的循环中;如果接收到RS-485驱动程序的消息,则与RS-485驱动程序进行数据交换;如果接收到RS-485用户接口库函数发送的消息,则根据消息的内容进行判断任务类型;任务共有两种类型:读取数据命令和控制输出数据命令,如果是读取数据命令,RS-485网络节点驱动程序就把相应的数据进行处理为工程量,如果是控制输出数据命令,就把从RS-485用户接口库函数中接收的数据进行处理并存储在内存中,等到与RS-485驱动程序交换数据时发送给RS-485网络节点;在执行完上述读取或控制任务后,RS-485网络节点驱动程序与RS-485用户接口库函数交换数据,把获得的数据以及故障代码发送给RS-485用户接口库函数;
所述RS-485用户接口库函数采用目标文件形式提供给用户编制的上层控制软件调用,通过消息通信方法和共享内存方法实现对各RS-485网络节点驱动程序数据的访问;
所述RS-485网络节点的单片机程序通过RS-485网络与计算机主机节点通信,根据计算机主机节点的命令进行动作,并将数据发送给计算机主机节点;每个RS-485网络节点的单片机程序具体流程为:单片机程序运行时先执行初始化,然后等待串口中断,在串口中断中,单片机程序接收RS-485网络的数据并根据接收的命令进行执行,并向RS-485网络发送数据;在定时器中断中,单片机程序根据不同节点的需要同时执行数据采集、控制输出、计算、数据存储任务。
2.按照权利要求1所述分布式水下机器人控制方法,其特征在于:计算机主机的串口通过RS-232/RS-485转换器连接到RS-485网络上,通过RS-485网络与各个RS-485网络节点的单片机通信,各RS-485网络节点的单片机串口通过RS-485驱动芯片连接到RS-485网络上。
CNB2003101052005A 2003-11-26 2003-11-26 一种分布式水下机器人控制方法 Expired - Fee Related CN100362496C (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CNB2003101052005A CN100362496C (zh) 2003-11-26 2003-11-26 一种分布式水下机器人控制方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CNB2003101052005A CN100362496C (zh) 2003-11-26 2003-11-26 一种分布式水下机器人控制方法

Publications (2)

Publication Number Publication Date
CN1622062A CN1622062A (zh) 2005-06-01
CN100362496C true CN100362496C (zh) 2008-01-16

Family

ID=34757210

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB2003101052005A Expired - Fee Related CN100362496C (zh) 2003-11-26 2003-11-26 一种分布式水下机器人控制方法

Country Status (1)

Country Link
CN (1) CN100362496C (zh)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102539182A (zh) * 2011-12-14 2012-07-04 上海海事大学 Arv故障诊断主元分析装置
CN103345257A (zh) * 2013-06-29 2013-10-09 西北工业大学 一种水下航行器的自动驾驶仪控制系统
CN103439935B (zh) * 2013-08-15 2015-12-02 青岛远创机器人自动化有限公司 一种基于状态机模型的水下机器人控制系统
CN104678931B (zh) * 2013-11-30 2017-06-30 中国科学院沈阳自动化研究所 一种水下机器人智能型电池组检测与控制装置及其方法
CN104932454B (zh) * 2015-04-27 2017-12-19 哈尔滨工程大学 一种rov远程通信系统
CN105711786B (zh) * 2016-01-26 2019-09-03 河北工业大学 一种微型模块化auv尾部布置结构
CN106126346B (zh) * 2016-07-05 2019-02-26 东北大学 一种大规模分布式数据采集系统及方法
CN108037763A (zh) * 2017-12-15 2018-05-15 中国南方电网有限责任公司调峰调频发电公司 水下机器人控制装置
CN110968084B (zh) * 2018-09-30 2021-06-01 中国科学院沈阳自动化研究所 一种自主遥控水下机器人人机共享控制方法
CN109484591B (zh) * 2018-11-15 2021-06-11 江苏科技大学 一种水下机器人推进器模块化驱动电路及其驱动方法
CN111290343A (zh) * 2018-12-07 2020-06-16 中国科学院沈阳自动化研究所 水下机器人舱内总线式电气控制系统及方法
CN112859887B (zh) * 2019-11-28 2022-06-14 中国科学院沈阳自动化研究所 基于天基中心的多水下机器人自主任务分配方法
CN111497964B (zh) * 2020-04-27 2021-11-02 山东大学 一种电驱动四足机器人分布式控制系统

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0746677A (ja) * 1993-07-27 1995-02-14 Toyo Techno Corp:Kk 分散処理統合管理システム
CN1268227A (zh) * 1997-08-22 2000-09-27 霍尼韦尔公司 使用带有异常报告的循环发布/预约方案存取数据的系统和方法
JP2003334783A (ja) * 2002-05-13 2003-11-25 Canon Inc ロボットの情報制御方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0746677A (ja) * 1993-07-27 1995-02-14 Toyo Techno Corp:Kk 分散処理統合管理システム
CN1268227A (zh) * 1997-08-22 2000-09-27 霍尼韦尔公司 使用带有异常报告的循环发布/预约方案存取数据的系统和方法
JP2003334783A (ja) * 2002-05-13 2003-11-25 Canon Inc ロボットの情報制御方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
一种基于分布式信息融合技术的水下机器人智能感知系统方案. 汪小龙,葛运建,张建军,宋光明.机器人,第24卷第5期. 2002 *

Also Published As

Publication number Publication date
CN1622062A (zh) 2005-06-01

Similar Documents

Publication Publication Date Title
CN100362496C (zh) 一种分布式水下机器人控制方法
CN100382515C (zh) 动力、环境集中监控管理系统
US20140148964A1 (en) System energy efficiency controller in smart energy network, control method thereof, and control method for terminal device
CN1319701C (zh) 一种采用分布式节点网络的水下机器人控制装置
CN102122162B (zh) 微网中央控制器
CN2660592Y (zh) 一种分布式水下机器人控制装置
CN209289290U (zh) 基于CANopen的轻型机械臂控制系统
CN100558054C (zh) 基于以太网的楼宇控制器
CN2675357Y (zh) 一种分布式水下机器人控制装置
CN101158855A (zh) 串行接口式单片机数据采集系统
CN104932385A (zh) 用于波浪模拟的多轴控制系统及方法
CN201385313Y (zh) 一种两栖机器人电机控制装置
CN101872167A (zh) 两栖机器人电机控制装置
CN1655080A (zh) 混凝土泵车臂架运动控制器
CN201719826U (zh) 基于dsp2407微处理器控制的足球机器人装置
CN201004175Y (zh) 现场总线多传感器融合装置
CN110737233A (zh) 综合管廊智能控制器主控设备、装置、系统及控制方法
CN114172928B (zh) 一种物联网系统的设计方法
CN100471006C (zh) 用控制器局域网进行内部通信的电能量管理终端及控制方法
CN212303773U (zh) 一种集中式储能设备热管理系统
CN107154675A (zh) 一种应用于中高压svg的单总线通讯系统及其方法
CN115114224A (zh) 一种soc+fpga的飞控计算机硬件系统
CN211259222U (zh) 一种水下液压系统控制和数据采集装置
CN113928155A (zh) 一种基于iec61499的电动汽车有序充电控制系统的搭建方法
CN205466220U (zh) 焊锡机器人的主机控制系统

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
C19 Lapse of patent right due to non-payment of the annual fee
CF01 Termination of patent right due to non-payment of annual fee