CN111538336A - 一种无人船控制系统 - Google Patents
一种无人船控制系统 Download PDFInfo
- Publication number
- CN111538336A CN111538336A CN202010429881.4A CN202010429881A CN111538336A CN 111538336 A CN111538336 A CN 111538336A CN 202010429881 A CN202010429881 A CN 202010429881A CN 111538336 A CN111538336 A CN 111538336A
- Authority
- CN
- China
- Prior art keywords
- unmanned ship
- control
- unmanned
- cloud server
- instruction
- 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.)
- Granted
Links
- 238000004891 communication Methods 0.000 claims abstract description 30
- 235000011034 Rubus glaucus Nutrition 0.000 claims description 41
- 235000009122 Rubus idaeus Nutrition 0.000 claims description 41
- 238000011161 development Methods 0.000 claims description 41
- 240000007651 Rubus glaucus Species 0.000 claims description 39
- 238000010586 diagram Methods 0.000 description 15
- 238000000034 method Methods 0.000 description 14
- 238000004364 calculation method Methods 0.000 description 13
- 230000003993 interaction Effects 0.000 description 7
- 230000008569 process Effects 0.000 description 7
- 230000005540 biological transmission Effects 0.000 description 5
- 230000006870 function Effects 0.000 description 5
- 244000235659 Rubus idaeus Species 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 2
- 238000004590 computer program Methods 0.000 description 2
- 230000003467 diminishing effect Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 230000001141 propulsive effect Effects 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 206010063385 Intellectualisation Diseases 0.000 description 1
- WHXSMMKQMYFTQS-UHFFFAOYSA-N Lithium Chemical compound [Li] WHXSMMKQMYFTQS-UHFFFAOYSA-N 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000001174 ascending effect Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 229910052744 lithium Inorganic materials 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/02—Control of position or course in two dimensions
- G05D1/0206—Control of position or course in two dimensions specially adapted to water vehicles
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/02—Control of position or course in two dimensions
- G05D1/03—Control of position or course in two dimensions using near-field transmission systems, e.g. inductive-loop type
Landscapes
- Engineering & Computer Science (AREA)
- Aviation & Aerospace Engineering (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Toys (AREA)
- Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
Abstract
本公开实施例公开了一种无人船控制系统,包括岸端控制终端、云端服务器和船载控制器;所述岸端控制终端用于将对无人船的控制指令发向所述云端服务器;所述云端服务器,用于在确定所述控制指令指向的无人船后,向所确定的无人船所连接的船载控制器发送所述控制指令;所述船载控制器,用于根据所述控制指令控制预定引脚按照预定方式向所述无人船输出PWM波,以使所述无人船根据所述PWM波调整航向和航速。本实施例所述的无人船控制系统能够提高岸端控制终端与无人船之间的通信效率,降低通信成本。
Description
技术领域
本公开实施例涉及无人船技术领域,具体涉及一种无人船控制系统。
背景技术
无人船是一种集智能化、网络化、集成化、机动化、无人化于一体的新型小型水面自主航行交通工具,主要用于在各种水域环境下执行任务,在民用船和军用船方面具有广泛的应用前景。
但是,现有的无人船控制系统主要是通过数字电台来实现无人船与地面控制中心之间的通信,这种方式的通信效率较低,且需要多个中继站才能实现远距离通信,系统部署工作量大,成本较高,实时性和实用性较差。因此,迫切需要一种新的技术方案解决上述技术问题。
发明内容
有鉴于此,本公开实施例提供一种无人船控制系统,以提高通信效率,降低通信成本。
本公开实施例的其他特性和优点将通过下面的详细描述变得显然,或部分地通过本公开实施例的实践而习得。
本公开实施例提供了一种无人船控制系统,包括岸端控制终端、云端服务器和船载控制器;
所述岸端控制终端,用于将对无人船的控制指令发向所述云端服务器;
所述云端服务器,用于在确定所述控制指令指向的无人船后,向所确定的无人船所连接的船载控制器发送所述控制指令;
所述船载控制器,用于根据所述控制指令控制预定引脚按照预定方式向所述无人船输出PWM波,以使所述无人船根据所述PWM波调整航向和航速。
于一实施例中,所述无人船根据所述PWM波调整航向和航速包括:所述无人船根据所述PWM波的频率和占空比控制所述无人船的电调,所述电调用于控制所述无人船的电机的转速和转向,所述电机用于根据所述转速和转向控制所述无人船的航速和航向。
于一实施例中,所述控制指令包括设置航线指令、停止航行指令、开始航行指令、调整航行速度指令、以及调整航行方向指令。
于一实施例中,所述船载控制器为树莓派开发板。
于一实施例中,所述船载控制器用于根据所述控制指令控制预定引脚按照预定方式向所述无人船输出PWM波包括:所述树莓派开发板用于根据所述控制指令调整输出端口的引脚的电平状态以输出PWM波。
于一实施例中,岸端控制终端用于将对无人船的控制指令发向所述云端服务器包括:所述岸端控制终端用于通过控制界面接收用户对无人船的控制指令,将所述控制指令发向云端服务器。
于一实施例中,所述控制界面包括用于调整速度的速度横调界面、用于接收开始航行指令的开始航行按钮、用于接收停止航行的停止航行按钮、用于调整航行方向的罗盘控制按钮。
于一实施例中,所述船载控制器用于根据所述控制指令控制预定引脚按照预定方式向所述无人船输出PWM波包括:所述树莓派开发板用于根据所述控制指令确定航向和航速,根据所述航向和航速分别计算左右引脚的占空比。
于一实施例中,所述船载控制器包括4G通信模块,所述船载控制器用于通过所述4G通信模块接收所述云端服务器发送的控制指令。
于一实施例中,所述无人船控制系统还包括信息采集模块,信息采集模块置于所述无人船前端,用于采集所述无人船的航行环境信息,将所述航行环境信息通过所述云端服务器发送到所述岸端控制终端;所述岸端控制终端用于将对无人船的控制指令发向所述云端服务器包括,用于根据所述航行环境信息确定对所述无人船的控制指令,将所述控制指令发向所述云端服务器。
本公开实施例提出的技术方案的有益技术效果是:
本公开实施例所述的无人船控制系统包括岸端控制终端,用于将对无人船的控制指令发向所述云端服务器;所述云端服务器,用于在确定所述控制指令指向的无人船后,向所确定的无人船所连接的船载控制器发送所述控制指令;所述船载控制器,用于根据所述控制指令控制预定引脚按照预定方式向所述无人船输出PWM波,以使所述无人船根据所述PWM波调整航向和航速,能够提高岸端控制终端与无人船之间的通信效率,能够降低通信成本。
附图说明
为了更清楚地说明本公开实施例中的技术方案,下面将对本公开实施例描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅仅是本公开实施例中的一部分实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据本公开实施例的内容和这些附图获得其他的附图。
图1是根据本公开实施例提供的一种无人船控制系统的结构示意图;
图2是根据本公开实施例提供的一种无人船控制系统的交互流程示意图;
图3是根据本公开实施例提供的一种岸端控制终端上的控制界面示意图;
图4是根据本公开实施例提供的另一种无人船控制系统的结构示意图;
图5是根据本公开实施例提供的另一种无人船控制系统的交互流程示意图;
图6a是根据本公开实施例提供的树莓派开发板接收转向角在0~45度范围内时无人船根据左右引脚输出的占空比航向示意图;
图6b是根据本公开实施例提供的树莓派开发板接收转向角在45~90度范围内时无人船根据左右引脚输出的占空比航向示意图;
图6c是根据本公开实施例提供的树莓派开发板接收转向角在180~225度范围内时无人船根据左右引脚输出的占空比航向示意图;
图6d是根据本公开实施例提供的树莓派开发板接收转向角在225~270度范围内时无人船根据左右引脚输出的占空比航向示意图;
图7是根据本公开实施例提供的根据输入角度计算引脚占空比的流程示意图;
图8是根据本公开实施例提供的模拟输出PWM波流的流程示意图。
具体实施方式
为使本公开实施例解决的技术问题、采用的技术方案和达到的技术效果更加清楚,下面将结合附图对本公开实施例的技术方案作进一步的详细描述,显然,所描述的实施例仅仅是本公开实施例中的一部分实施例,而不是全部的实施例。基于本公开实施例中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本公开实施例保护的范围。
需要说明的是,本公开实施例中术语“系统”和“网络”在本文中常被可互换使用。本公开实施例中提到的“和/或”是指包括一个或更多个相关所列项目的任何和所有组合。本公开的说明书和权利要求书及附图中的术语“第一”、“第二”等是用于区别不同对象,而不是用于限定特定顺序。
还需要说明是,本公开实施例中下述各个实施例可以单独执行,各个实施例之间也可以相互结合执行,本公开实施例对此不作具体限制。
本公开实施方式中的多个装置之间所交互的消息或者信息的名称仅用于说明性的目的,而并不是用于对这些消息或信息的范围进行限制。
下面结合附图并通过具体实施方式来进一步说明本公开实施例的技术方案。
图1示出了本公开实施例提供的一种无人船控制系统的结构示意图,本实施例可适用于控制无人船航行的情况,如图1所示,本实施例所述的无人船控制系统包括岸端控制终端110、云端服务器120和船载控制器130。图2是根据本公开实施例提供的一种无人船控制系统的交互流程示意图,如图2所示,本实施例所述的无人船控制系统中的岸端控制终端110、云端服务器120和船载控制器130之间的交互流程包括:
在步骤S210中,所述岸端控制终端110将对无人船的控制指令发向所述云端服务器120。其中,所述控制指令包括设置航线指令、停止航行指令、开始航行指令、调整航行速度指令、以及调整航行方向指令等。
其中,对无人船的控制指令可以是用户发出的,也可以是自动生成的。例如,所述岸端控制终端110可用于通过控制界面接收用户对无人船的控制指令,将所述控制指令发向云端服务器120。其中,所述控制界面可包括用于调整速度的速度横调界面、用于接收开始航行指令的开始航行按钮、用于接收停止航行的停止航行按钮、用于调整航行方向的罗盘控制按钮,图3示出了一种控制界面示意图,如图3所示,所述控制界面可包括用于调整速度的速度横调界面301、用于接收开始航行指令的开始航行按钮302、用于接收停止航行的停止航行按钮303、用于调整航行方向的罗盘控制按钮304。
又如,所述无人船控制系统还包括信息采集模块(图1中未示出),所述信息采集模块置于所述无人船前端,用于采集所述无人船的航行环境信息,将所述航行环境信息通过所述云端服务器120发送到所述岸端控制终端110;所述岸端控制终端110用于将对无人船的控制指令发向所述云端服务器120包括,用于根据所述航行环境信息确定对所述无人船的控制指令,将所述控制指令发向所述云端服务器120。
在步骤S220中,所述云端服务器120在确定所述控制指令指向的无人船后,向所确定的无人船所连接的船载控制器130发送所述控制指令。
在步骤S230中,所述船载控制器130根据所述控制指令控制预定引脚按照预定方式向所述无人船输出PWM波,以使所述无人船根据所述PWM波调整航向和航速。例如,所述无人船根据所述PWM波的频率和占空比控制所述无人船的电调,所述电调用于控制所述无人船的电机的转速和转向,所述电机用于根据所述转速和转向控制所述无人船的航速和航向。
示例性地,所述船载控制器130可采用树莓派开发板。若所述船载控制器130采用树莓派开发板,所述树莓派开发板可用于根据所述控制指令调整输出端口的引脚的电平状态以输出PWM波。进一步地,所述树莓派开发板用于根据所述控制指令确定航向和航速,根据所述航向和航速分别计算左右引脚的占空比。
根据本公开的一个或多个实施例,所述船载控制器130包括4G通信模块,所述船载控制器130用于通过所述4G通信模块接收所述云端服务器120发送的控制指令。
本实施例所述的无人船控制系统包括岸端控制终端、云端服务器和船载控制器;所述岸端控制终端用于通过云端服务器向无人船的船载控制器发送控制指令,所述船载控制器用于根据接收的控制指令控制预定引脚按照预定方式向所述无人船输出PWM波,以调整无人船的航向和航速,能够提高岸端控制终端与无人船之间的通信效率,能够降低通信成本。
图4是根据本公开实施例提供的另一种无人船控制系统的结构示意图,如图4所示,本实施例所述的无人船控制系统包括岸端控制终端410、云端服务器420、无人船内置的树莓派开发板430、4G通信模块440和数据通信单元450。
本实施例以上一实施例为基础,进行了改进优化,如图4所示,实施例在无人船中内置4G通信模块440和数据传输单元DTU 450,其中数据传输单元DTU 450专门用来将树莓派开发板430上行的串口数据转换为IP数据通过4G通信模块440上传到云端服务器420,或者云端服务器420将航向指令发送给4G通信模块440后,通过数据传输单元DTU 450将将携带该航向指令的IP数据转换为串口数据发送给树莓派开发板430。
图5是基于图4所示的无人船控制系统提供的一种无人船控制系统的交互流程示意图,如图5所示,本实施例所述的无人船控制系统中的岸端控制终端410、云端服务器420、无人船内置的树莓派开发板430、4G通信模块440和数据通信单元450,与无人船的电调以及电机之间的交互流程包括:
在步骤S510中,岸端控制终端通过APP 410发向航向指令。用户可根据无人船前方障碍物情况和航行需求,在岸端控制终端APP端410输入控制指令—停止航行、开始航行、航行速度和控制无人船航向来实时控制无人船航行。例如,本实施例岸端控制终端的APP端410的控制界面可采用如图3所示的形式,所述控制界面可包括用于调整速度的速度横调界面301、用于接收开始航行指令的开始航行按钮302、用于接收停止航行的停止航行按钮303、用于调整航行方向的罗盘控制按钮304。
在步骤S520中,云端服务器接收数据并处理,向对应的无人船所连接的树莓派开发板发送航向指令。
云端服务器420接收控制指令并处理该控制指令数据发送至树莓派开发板430,云端服务器420同时监听并处理树莓派开发板430返回的数据。本实施例中,在无人船中采用数据传输单元DTU(Data Transfer Unit,DTU)为中转的方式进行通信,即树莓派开发板430通过串口收发数据。在连接好数据传输单元DTU后,需要插入SIM卡开启4G网络。之后需要配置数据传输单元连接的云端服务器420的IP地址和端口号信息。配置好DTU之后,树莓派开发板430便可以通过DTU与岸端控制终端APP 410进行通信。DTU可以进行串口数据和IP数据之间的互相转化,且采用4G通信网络进行数据传送,大大增加了无人船的通信范围,基本上可以使无人船在任何地方都保持与云端服务器420的无线通信。
例如4G路由可采用华为公司研发的华为4G路由,改路通过12V转压线接入锂电池供电,WLAN采用Wi~Fi 802.11n,支持远程管理以及PPTPVPN等模式,具有高速、稳定等优点。以树莓派开发板430采用3代B+(Raspberry)为无人船控制中心为例,其CPU配有1.4GHz四核64位ARM A53处理器。数据通信配件主要包括:千兆以太网,板载802.11b/g/n/ac,2.4/5G双频WIFI和低功耗蓝牙4.2,内存1GB。提供的数据接口包括:4个USB2.0接口、40引脚扩展GPIO、4路立体声输出和符合视频接口、全尺寸HDMI和RCA视频输出、CSI照相机端口、DSI显示端口、TF卡端口,双排针POE接口,工作电压5V。树莓派开发板430可搭载Linux系统。本实施例可使用的阿里云端服务器(Elastic Compute Service,ECS),其拥有传统云端服务器420和虚拟主机无法企及的优势:保证云计算整个基础框架的高可用性、数据的可靠性以及云端服务器420的高可用性;保证云计算的高安全性与高稳定性。
可以控制树莓派开发板430程序启动后每隔预定时长(例如10秒)向云端服务器420发送一个心跳包指令,可在指令中包括被控制的无人船的标识,例如编号UUID。云端服务器420收到心跳包后即知道并记录该树莓派开发板430的网络地址和相应的通信端口;APP 410控制端登录后也会向云端服务器420发送心跳包(10秒/次),该心跳包包含了手机的UUID编号和该手机想连接的无人船UUID编号。此时APP 410控制端和树莓派开发板430已进行绑定。当云端服务器420收到APP端410发送的心跳包指令后即可知道该APP 410应该和哪个无人船通信。当APP端410向云端服务器420发送控制指令后,云端服务器420即可知道应向哪个无人船的树莓派开发板430转发控制指令。
云端服务器420接受APP端航向控制指令后,首先进行数据处理解析,例如可采用如表1中的对应方式处理:
APP端操作 | 数据处理格式 |
开始导航 | ?+shipID+?startship |
停止航行 | ?+shipID+?sethead361? |
调整速度 | ?+shipID+?set+speed? |
罗盘方向 | ?+shipID+?sethead+angle? |
表1
表1中,shipID为无人船特定的ID号,云端服务器420可根据shipID号将控制指令发送给指定的无人船;startship为用户控制开始航行指令按钮输出的启动无人船开始航行的指令;angle为用户控制罗盘输出的无人船转向角度;speed为用户控制速度横调输出的无人船速度比率。
在步骤S530中,树莓派开发板接受指令,其引脚输出PWM波。
树莓派开发板430接收云端服务器420指令,根据其引脚输出PWM波并在树莓派开发板430控制台显示信息。
本实施例中,可控制树莓派开发板430根据接收到的转向角度信息,对每个范围内的角度进行计算得出角度偏移率f,示例性地,本实施例可采用如下公式计算角度偏移率:
其中f为角度偏移率;
h为转向角度。
树莓派开发板430的通用输入/输出端口(General Purpose I/O Ports,GPIO)也被称作引脚,可以通过其输出高低电平或者判断其状态是高电平还是低电平。用户可以通过GPIO口和硬件进行数据交互,控制硬件工作等。GPIO口的使用非常广泛,可采用多种编码方式,例如物理引脚BOARD编码,BCD编码,以及wiringPi编码等。
脉冲宽度调制PWM(Paulse Width Modulation,PWM)是一种将信息编码为脉冲信号的调制方法,通过对一系列脉冲的宽度进行调制,等效出符合要求的波形。该方法对模拟信号电平进行数字编码,尤其是控制惯性荷载,如电动机等。PWM有频率和占空比两个属性,PWM的频率是指每秒钟信号从高电平到低电平再回到高电平的次数,占空比是指高电平持续时间和低电平持续时间之间的比例。本实施例可通过PWM改变直流电机电枢上电压的占空比,调整平均电压大小,从而控制电机的转速,输入的占空比越大,电机的转速越大。
当树莓派开发板430接收到的转向角度在0~90度范围内时,计算左右引脚输出的占空比,其计算公式如下:
其中,f为角度偏移率;
r为速度比率;
left_forward表示左引脚向前推进的占空比;
left_backward表示左引脚向后推进的占空比;
right_forward表示右引脚向前推进的占空比;
right_backward表示右引脚向后推进的占空比;
bd表示向后推进的最大占空比,可优选设为10;
st表示停止时的占空比,可优选设为15;
fd表示向前推进的最大占空比,可优选设为20。
即可通过如下方式来根据计算出的角度偏移率正负来改变两边引脚的占空比:
(1)若f>0:当前转向角度范围为45~90度,左边引脚输出的占空比不变,右边引脚输出的占空比随着角度的变小而减小,此时右边引脚输出的占空比比左边引脚小,左螺旋桨比右螺旋桨转速快,无人船向右边偏转。
(2)若f<=0:当前转向角度范围为0~45度,左边引脚输出的占空比不变,右边引脚随着转向角度的变小,输出向后推进的占空比不断变大,右边螺旋桨处于倒退状态,致使无人船能更好的进行大角度向右转弯。
图6a是当转向角在0~45度范围内无人船根据两引脚输出的占空比航向示意图,图6b是当转向角在45~90度范围内无人船根据两引脚输出的占空比航向示意图,在0~45度范围内,右边引脚输出向后推进的占空比,当前状况下无人船左螺旋桨正向转动,右螺旋桨反向转动,致使无人船航向偏向指定角度范围内;在45~90度范围内,因转向角度不大,右边引脚依然输出的是向前推进的占空比,当前状况下无人船左右螺旋桨都是正向转动,但左螺旋桨转速较右螺旋桨转速快,因此,无人船航向偏向45~90度范围内。
当树莓派开发板430接收到的转向角度在90~180范围内时,计算左右引脚的占空比,其计算公式如下:
其中,f为角度偏移率;
r为速度比率;
left_forward表示左引脚向前推进的占空比;
left_backward表示左引脚向后推进的占空比;
right_forward表示右引脚向前推进的占空比;
right_backward表示右引脚向后推进的占空比;
bd表示向后推进的最大占空比;
st表示停止时的占空比;
fd表示向前推进的最大占空比。
即可通过如下方式来根据计算出的角度偏移率正负来改变两边引脚的占空比:
(1)若f>0:当前转向角度范围为90~135度,右边引脚输出占空比不变,左边引脚输出的占空比随着角度的变大而减小,此时左边引脚输出的占空比比右边引脚小,左螺旋桨比右螺旋桨转速慢,无人船向左边小角度偏转。
(2)若f<=0:当前转向角度范围为135~180度,右边引脚输出占空比不变,左边引脚随着转向角度的变大,输出向后推进的占空比不断变大,左边螺旋桨处于倒退状态,致使无人船能更好的进行大角度向左转弯。
当树莓派开发板430接收到的转向角度在180~270度范围内时,计算左右引脚的占空比,其计算公式如下:
其中,f为角度偏移率;
r为速度比率;
left_forward表示左引脚向前推进的占空比;
left_backward表示左引脚向后推进的占空比;
right_forward表示右引脚向前推进的占空比;
right_backward表示右引脚向后推进的占空比;
bd表示向后推进的最大占空比;
st表示停止时的占空比;
fd表示向前推进的最大占空比。
即可通过如下方式来根据计算出的角度偏移率正负来改变两边引脚的占空比:
(1)若f>0:当前转向角度范围为180°~225°,右边引脚输出的占空比不变,为向后推进占空比,此时右边螺旋桨处于反向转动倒退状态;左边引脚输出向前推进占空比,且角度越小,向前推进占空比越大,此时左边螺旋桨处于正向转动前进状态,致使无人船能在规定角度内进行倒退。
(2)若f<=0:当前转向角度范围为225°~270°,右边引脚输出的占空比不变,为向后推进占空比,此时右边螺旋桨处于倒退状态;左边引脚输出向后推进占空比,且角度越大,向后推进占空比越大,此时左边螺旋桨处于倒退状态,左螺旋桨反向转速比右螺旋桨反向转速慢,致使无人船能在该角度范围内进行倒退。
图6c是当转向角在180~225度范围内无人船根据两引脚输出的占空比航向示意图,图6d是当转向角在225~270度范围内无人船根据两引脚输出的占空比航向示意图。当转向角在范围180~270度内无人船根据两引脚输出的占空比航向示意图。
当树莓派开发板430接收到的转向角度在270~360度范围内时,计算左右引脚的占空比,其计算公式如下:
其中,f为角度偏移率;
r为速度比率;
left_forward表示左引脚向前推进的占空比;
left_backward表示左引脚向后推进的占空比;
right_forward表示右引脚向前推进的占空比;
right_backward表示右引脚向后推进的占空比;
bd表示向后推进的最大占空比;
st表示停止时的占空比;
fd表示向前推进的最大占空比。
即可通过如下方式来根据计算出的角度偏移率正负来改变两边引脚的占空比:
(1)若f>0:当前转向角度范围为315~360度,左边引脚输出的占空比不变,为向后推进占空比,此时左边螺旋桨处于反向转动倒退状态;右边引脚输出向前推进占空比,且角度越大,向前推进占空比越大,此时右边螺旋桨处于正向转动前进状态,无人船在该范围内进行倒退。
(2)若f<=0:当前转向角度范围为270~315度,左边引脚输出的占空比不变,为向后推进占空比,此时左边螺旋桨处于反向转动倒退状态;右边引脚输出向后推进占空比,且角度越小,向后推进占空比越大,此时右边螺旋桨处于反向转动倒退状态,左螺旋桨反向转速比右螺旋桨反向转速快,致使无人船能在规定角度内进行倒退。
图7是根据本公开实施例提供的根据输入角度计算引脚占空比的流程示意图,如图7所示,树莓派开发板430根据输入角度计算左右引脚占空比包括:
在步骤S7001中,加载参数:向后推进的最大占空比(以下用bd表示)、停止时的占空比(以下用st表示)、向前推进的最大占空比(以下用fd表示)。
在步骤S7002中,树莓派开发板读取转向角度(以下用h表示)和速度比率(以下用r表示)。
在步骤S7010中,确定h是否为361,若是则执行步骤S7011。
在步骤S7011中,控制无人船停止航行。
在步骤S7020中,确定是否h是否满足:0<=h<=90,若是则执行步骤S7011。
在步骤S7021中,f=1/45*h-1。
在步骤S7022中,计算左引脚向前推进输出:r*fd+(1-r)*st
在步骤S7023中,判断是否f>0,若是则执行步骤S7024,否则执行步骤S7025。
在步骤S7024中,右引脚向前推进输出:f*r*fd+(1-f*r)*st,计算结束。
在步骤S7025中,右引脚向后推进输出:(-f*r)*bd+(1+f*r)*st,计算结束。
在步骤S7030中,确定是否h是否满足:90<h<=180,若是则执行步骤S7011。
在步骤S7031中,f=-1/45*h+3。
在步骤S7032中,计算右引脚向前推进输出:r*fd+(1-r)*st
在步骤S7033中,判断是否f>0,若是则执行步骤S7034,否则执行步骤S7035。
在步骤S7034中,左引脚向前推进输出:f*r*fd+(1-f*r)*st,计算结束。
在步骤S7035中,左引脚向后推进输出:(-f*r)*bd+(1+f*r)*st,计算结束。
在步骤S7040中,确定是否h是否满足:180<h<=270,若是则执行步骤S7011。
在步骤S7041中,f=-1/45*h+5。
在步骤S7042中,计算右引脚向后推进输出:r*bd+(1-r)*st
在步骤S7043中,判断是否f>0,若是则执行步骤S7044,否则执行步骤S7045。
在步骤S7044中,左引脚向前推进输出:f*r*fd+(1-f*r)*st,计算结束。
在步骤S7045中,右引脚向后推进输出:(-f*r)*bd+(1+f*r)*st,计算结束。
在步骤S7050中,确定是否h是否满足:270<h<=360,若是则执行步骤S7011。
在步骤S7051中,f=1/45*h-7。
在步骤S7052中,计算左引脚向后推进输出:r*bd+(1-r)*st
在步骤S7053中,判断是否f>0,若是则执行步骤S7054,否则执行步骤S7055。
在步骤S7054中,右引脚向前推进输出:f*r*fd+(1-f*r)*st,计算结束。
在步骤S7055中,右引脚向后推进输出:(-f*r)*bd+(1+f*r)*st,计算结束。
在步骤S540中,树莓派开发板根据输出的PWM波控制无人船电调,电调进而控制电机转速。
图8是根据本公开实施例提供的模拟输出PWM波流的流程示意图,如图8所示,模拟输出PWM波流程图包括:
在步骤S810中,输入占空比和频率。
在步骤S820中,计算单位周期内的高电平时间和低电平时间。
在步骤S830中,输入高电平。
在步骤S840中,持续高电平时间。
在步骤S850中,输出低电平。
在步骤S860中,持续低电平时间。
在步骤S870中,确定是否收到结束信号,若是则结束,否则返回步骤S830。
本实施例中,PWM根据占空比和频率计算一个周期内的高电平时间和低电平时间,先输出高电平时间长度的高电平,然后输出低电平时间长度的低电平即可输出一个周期的波形。不断输出一个周期的电平,直到输出指定长度的波形。电调根据引脚输出的PWM信号控制电机的转向和转速:本示例电机的控制是以64Hz,占空比为15的PWM信号为中心。对于电机来说,当占空比在10~15之间时反向转动,占空比在15~20之间时正向转动。且占空比偏离15越多,电机转速越快。
在步骤S550中,电机控制无人船的航向和航速,最终按照用户输入的指令航行。
以上仅是本实施例的优选实施方式,本实施例的保护范围并不仅局限于上述实施例,凡属于本实施例思路下的技术方案均属于本实施例的保护范围。应当指出,对于本技术领域的普通技术人员来说,在不脱离本实施例原理前提下的若干改进和润饰,应视为本实施例的保护范围。
可以以一种或多种程序设计语言或其组合来编写用于执行本公开实施例的操作的计算机程序代码,上述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或云端服务器420上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
附图中的流程图和框图,图示了按照本公开实施例各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本公开实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现。其中,单元的名称在某种情况下并不构成对该单元本身的限定,例如,第一获取单元还可以被描述为“获取至少两个网际协议地址的单元”。
以上描述仅为本公开实施例的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本公开实施例中所涉及的公开范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离上述公开构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本公开实施例中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。
Claims (10)
1.一种无人船控制系统,其特征在于,包括岸端控制终端、云端服务器和船载控制器;
所述岸端控制终端,用于将对无人船的控制指令发向所述云端服务器;
所述云端服务器,用于在确定所述控制指令指向的无人船后,向所确定的无人船所连接的船载控制器发送所述控制指令;
所述船载控制器,用于根据所述控制指令控制预定引脚按照预定方式向所述无人船输出PWM波,以使所述无人船根据所述PWM波调整航向和航速。
2.根据权利要求1所述的无人船控制系统,其特征在于,所述无人船根据所述PWM波调整航向和航速包括:
所述无人船根据所述PWM波的频率和占空比控制所述无人船的电调,所述电调用于控制所述无人船的电机的转速和转向,所述电机用于根据所述转速和转向控制所述无人船的航速和航向。
3.根据权利要求1所述的无人船控制系统,其特征在于,所述控制指令包括设置航线指令、停止航行指令、开始航行指令、调整航行速度指令、以及调整航行方向指令。
4.根据权利要求1所述的无人船控制系统,其特征在于,所述船载控制器为树莓派开发板。
5.根据权利要求4所述的无人船控制系统,其特征在于,所述船载控制器用于根据所述控制指令控制预定引脚按照预定方式向所述无人船输出PWM波包括:
所述树莓派开发板用于根据所述控制指令调整输出端口的引脚的电平状态以输出PWM波。
6.根据权利要求4所述的无人船控制系统,其特征在于,岸端控制终端用于将对无人船的控制指令发向所述云端服务器包括:
所述岸端控制终端用于通过控制界面接收用户对无人船的控制指令,将所述控制指令发向云端服务器。
7.根据权利要求6所述的无人船控制系统,其特征在于,所述控制界面包括用于调整速度的速度横调界面、用于接收开始航行指令的开始航行按钮、用于接收停止航行的停止航行按钮、用于调整航行方向的罗盘控制按钮。
8.根据权利要求4所述的无人船控制系统,其特征在于,所述船载控制器用于根据所述控制指令控制预定引脚按照预定方式向所述无人船输出PWM波包括:
所述树莓派开发板用于根据所述控制指令确定航向和航速,根据所述航向和航速分别计算左右引脚的占空比。
9.根据权利要求1所述的无人船控制系统,其特征在于,所述船载控制器包括4G通信模块,所述船载控制器用于通过所述4G通信模块接收所述云端服务器发送的控制指令。
10.根据权利要求1所述的无人船控制系统,其特征在于,所述无人船控制系统还包括信息采集模块,所述信息采集模块置于所述无人船前端,用于采集所述无人船的航行环境信息,将所述航行环境信息通过所述云端服务器发送到所述岸端控制终端;
所述岸端控制终端用于将对无人船的控制指令发向所述云端服务器包括,用于根据所述航行环境信息确定对所述无人船的控制指令,将所述控制指令发向所述云端服务器。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010429881.4A CN111538336B (zh) | 2020-05-20 | 2020-05-20 | 一种无人船控制系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010429881.4A CN111538336B (zh) | 2020-05-20 | 2020-05-20 | 一种无人船控制系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111538336A true CN111538336A (zh) | 2020-08-14 |
CN111538336B CN111538336B (zh) | 2023-11-21 |
Family
ID=71975917
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010429881.4A Active CN111538336B (zh) | 2020-05-20 | 2020-05-20 | 一种无人船控制系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111538336B (zh) |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105022398A (zh) * | 2015-07-15 | 2015-11-04 | 何春旺 | 触摸屏控制器及行驶装置的控制方法 |
CN106708061A (zh) * | 2017-03-07 | 2017-05-24 | 江苏大学 | 一种温室移动作业平台协同跟随作业导航方法及装置 |
CN106873578A (zh) * | 2017-04-27 | 2017-06-20 | 南通大学 | 无人作业智能船装置及控制系统 |
CN107172184A (zh) * | 2017-06-09 | 2017-09-15 | 盐城工学院 | 一种基于4g物联网技术的无人船云控制系统 |
CN107229276A (zh) * | 2017-05-27 | 2017-10-03 | 浙江大学 | 基于ARM Cortex‑M7处理器的智能无人船平台及其控制方法 |
CN108363407A (zh) * | 2018-01-04 | 2018-08-03 | 浙江大学 | 一种无人船自主航行的协同云控制系统 |
CN108375989A (zh) * | 2018-01-23 | 2018-08-07 | 中国人民解放军陆军军事交通学院镇江校区 | 一种无人艇控制系统 |
CN108427416A (zh) * | 2018-04-04 | 2018-08-21 | 上海华测导航技术股份有限公司 | 一种无人船差速自动转向控制系统及控制方法 |
US20180292215A1 (en) * | 2017-04-06 | 2018-10-11 | Yamaha Hatsudoki Kabushiki Kaisha | Server system and method |
CN109189069A (zh) * | 2018-09-18 | 2019-01-11 | 上海海事大学 | 自主收集水葫芦的小型无人水面艇及其收集方法 |
CN110228524A (zh) * | 2018-03-06 | 2019-09-13 | 重庆邮电大学 | 基于多层模糊控制的无人车辆自动转向控制方法 |
-
2020
- 2020-05-20 CN CN202010429881.4A patent/CN111538336B/zh active Active
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105022398A (zh) * | 2015-07-15 | 2015-11-04 | 何春旺 | 触摸屏控制器及行驶装置的控制方法 |
CN106708061A (zh) * | 2017-03-07 | 2017-05-24 | 江苏大学 | 一种温室移动作业平台协同跟随作业导航方法及装置 |
US20180292215A1 (en) * | 2017-04-06 | 2018-10-11 | Yamaha Hatsudoki Kabushiki Kaisha | Server system and method |
CN106873578A (zh) * | 2017-04-27 | 2017-06-20 | 南通大学 | 无人作业智能船装置及控制系统 |
CN107229276A (zh) * | 2017-05-27 | 2017-10-03 | 浙江大学 | 基于ARM Cortex‑M7处理器的智能无人船平台及其控制方法 |
CN107172184A (zh) * | 2017-06-09 | 2017-09-15 | 盐城工学院 | 一种基于4g物联网技术的无人船云控制系统 |
CN108363407A (zh) * | 2018-01-04 | 2018-08-03 | 浙江大学 | 一种无人船自主航行的协同云控制系统 |
CN108375989A (zh) * | 2018-01-23 | 2018-08-07 | 中国人民解放军陆军军事交通学院镇江校区 | 一种无人艇控制系统 |
CN110228524A (zh) * | 2018-03-06 | 2019-09-13 | 重庆邮电大学 | 基于多层模糊控制的无人车辆自动转向控制方法 |
CN108427416A (zh) * | 2018-04-04 | 2018-08-21 | 上海华测导航技术股份有限公司 | 一种无人船差速自动转向控制系统及控制方法 |
CN109189069A (zh) * | 2018-09-18 | 2019-01-11 | 上海海事大学 | 自主收集水葫芦的小型无人水面艇及其收集方法 |
Also Published As
Publication number | Publication date |
---|---|
CN111538336B (zh) | 2023-11-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20200284392A1 (en) | Gimbal, control method thereof, and uav | |
WO2016183771A1 (zh) | 基于无头模式的无人机控制方法及设备 | |
US11265471B2 (en) | Gimbal control method, device, gimbal, system, and storage medium | |
CN108549396B (zh) | 一种基于stm32f429的双电机驱动无人船控制系统 | |
CN205581642U (zh) | 一种基于stm32的无人艇自适应舵机控制系统 | |
WO2020211814A1 (zh) | 环绕飞行的控制方法、装置、终端及存储介质 | |
US20180115795A1 (en) | Adaptive bit rate algorithm for point-to-point wifi devices | |
WO2023226485A1 (zh) | 一种无人船自主航行控制系统 | |
WO2018103462A1 (zh) | 一种飞行器航向控制方法、装置和电子设备 | |
CN106970624A (zh) | 一种自主无人船 | |
CN107196831B (zh) | 一种便携式自主水下航行器的内部通信方法 | |
CN114089761A (zh) | 一种基于ros的领航跟随者多无人船编队控制系统及其方法 | |
CN115465406A (zh) | 一种船舶自动靠泊控制方法、装置、设备及存储介质 | |
CN111538336B (zh) | 一种无人船控制系统 | |
CN111221331A (zh) | 一种小型船艇多控制终端同步控制处理系统及方法 | |
CN104914883A (zh) | 摄像头舵机云台控制系统 | |
CN210653568U (zh) | 一种具有倒挡功能的水上救援机器人 | |
US20240032118A1 (en) | Wireless communication method, movable platform, system, and computer-readable storage media | |
CN206671888U (zh) | 一种自主无人船 | |
CN110737275B (zh) | 一种实现多船同步进出闸的船舶航行控制系统 | |
CN115102600B (zh) | 岸基方舱协同的水下滑翔机天通通信系统及数据传输方法 | |
CN213934636U (zh) | 一种四旋翼无人机编队搜索控制系统 | |
CN202838028U (zh) | 一种小型无人直升机自适应飞行控制系统 | |
CN108052104A (zh) | 一种室内调试无人船的方法及系统 | |
US20200319818A1 (en) | System and method for supporting low latency in a movable platform environment |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |