卫星导航农机自行走控制系统及其控制方法 技术领域 本发明属于卫星导航农机车载嵌入式自行走控制系统领域, 尤其是一种采用新一 代北斗卫星导航、 具有双向无线通讯功能, 解决了传统 GPS 导航单向通讯和依赖电信地面 基础设施双向通讯的局限性的卫星导航农机自行走控制系统及其控制方法。 同时本发明具 有远程主控室互联网边界法或操作者现场边界法确定耕作地边界技术以及自动导航耕作 轨迹确定技术, 特别适于在全球卫星覆盖下的大田环境使用。
背景技术 现有技术中的自行走农机不能双模无线通讯, 不支持北斗卫星导航功能, 不具有 远程主控室互联网操作功能, 不具有现场边界法确定耕作地边界技术。
发明内容 本发明的目的是提供一种具有双向无线通讯功能, 解决了传统 GPS 导航单向通讯 和依赖电信地面基础设施双向通讯的局限性的卫星导航农机自行走控制系统及其控制方 法。
本发明的技术方案是 : 卫星导航农机自行走控制系统, 其特征是由嵌入式服务器 (10)、 CAN 总线接口单元 (14) 和 GPIO 总线接口单元 (15) 组成, 所述的嵌入式服务器 (10) 通过外扩有线控制总线 (13) 分别与 CAN 总线接口单元 (14) 和 GPIO 总线接口单元 (15) 连 接;
所述的嵌入式服务器 (10) 由 32 比特的 RISC CPU(16)、 ROM 存储单元 (7)、 RAM 存 储单元 (18)、 北斗卫星通讯模块 (19)、 WIFI 无线通讯单元 (20)、 3G 无线通讯单元 (21)、 ASK 和 FSK 无线通讯单元 (22)、 USB 接口 (23)、 UART 串行接口 (24)、 I2C 接口 (25)、 CAN 总线 接口 (26)、 SPI 串行接口 (27)、 GPP 接口 (28)、 GPS 接口 (29)、 MAX232 电平转换单元 (30)、 RS232 接口 (31)、 485 串行接口 (31) 和 MAX485 差分串行接口 (33) 组成 ;
其中, 所述的嵌入式服务器 (10) 分别与 32 比特的 RISC CPU(16)、 ROM 存储单元 (7)、 RAM 存储单元 (18)、 北斗卫星通讯模块 (19)、 WIFI 无线通讯单元 (20)、 3G 无线通讯单 元 (21)、 ASK 和 FSK 无线通讯单元 (22)、 USB 接口 (23)、 UART 串行接口 (24)、 I2C 接口 (25)、 CAN 总线接口 (26)、 SPI 串行接口 (27)、 GPP 接口 (28)、 GPS 接口 (29)、 MAX232 电平转换单 元 (30)、 RS232 接口 (31)、 485 串行接口 (31) 和 MAX485 差分串行接口 (33) 连接。
卫星导航农机自行走控制系统的控制方法, 其特征是包括下列步骤 :
步骤 (34) : 开启卫星导航农机自行走控制系统嵌入式服务器, 判断边界数据是否 已经输入, 如边界数据没有输入进入步骤 (35), 如果边界数据已经输入, 则进入步骤 (37) ;
步骤 (35) : 判断是否从主控室服务器无线下载边界数据, 如果是从从主控室服务 器无线下载边界数据, 则进入步骤 (36) ; 如果不是从主控室服务器无线下载边界数据, 则 进入步骤 (39) ;
步骤 (36) : 从主控室服务器无线下载边界数据, 数据下载结束后返回步骤 (34) ;
步骤 (37) : 判断是否耕作运行方向矢量已经定义, 如没有定义则进入步骤 (38), 如已经定义则进入步骤 (41) ;
步骤 (38) : 定义耕作运行方向矢量, 定义耕作方向矢量结束后进入步骤 (41) ;
步骤 (39) : 判断是否由操作员便携获取边界数据, 如果是操作员便携获取边界数 据, 则进入步骤 (40), 如果不是操作员便携获取边界数据, 则返回步骤 (34) ;
步骤 (40) : 操作员便携获取边界数据, 便携获取边界数据结束后, 返回步骤 (34) ;
步骤 (41) : 计算耕作轨迹, 计算耕作轨迹结束后, 进入步骤 (42) ;
步骤 (42) : 按照耕作轨迹计算结果, 控制自行走农机, 进行耕作 ;
步骤 (43) : 判断是否耕作全部完成, 如耕作没有全部完成则进入步骤 (44), 如果 耕作全部完成, 则结束操作 ;
步骤 (44) : 继续耕作。
本发明的效果是 : 本发明为新一代卫星导航农机车载嵌入式自行走控制系统, 该 系统采用新一代北斗卫星导航, 具有双向无线通讯功能, 解决了传统 GPS 导航单向通讯和 依赖电信地面基础设施双向通讯的局限性。 同时本发明具有远程主控室互联网边界法或操 作者现场边界法确定耕作地边界技术以及自动导航耕作轨迹确定技术。 本发明特别适于在 全球卫星覆盖下的大田环境使用。
下面结合附图和实施例对本发明做进一步的说明。附图说明
图 1 是卫星导航农机自行走控制系统嵌入式服务器结构示意图 ; 图 2 是卫星导航农机自行走控制系统嵌入式服务器电路框图 ; 图 3 是卫星导航农机自行走控制系统应用环境示意图 ; 图 4 是卫星导航农机自行走控制系统安装在农机驾驶室内结构示意图 ; 图 5 是卫星导航下自动耕作的土地边界矢量组示意图 ; 图 6 是卫星导航农机自行走控制系统工作流程图。具体实施方式
本发明为基于嵌入式 WEB 服务器的新一代卫星导航农机自行走控制系统及其控 制方法, 本系统为安装在农机驾驶室内的车载嵌入式自行走控制系统。该系统采用新一代 北斗卫星导航, 具有双向无线通讯功能, 可以实现农机耕作驾驶自动控制。 该系统含有嵌入 式系统主板、 支持微型彩色摄像单元、 CAN 总线单元、 GPIO 农机管理控制单元。系统软件采 用 WEB 服务器技术, 通过智能软件算法实现对农机的导航和自动行走、 耕作功能。本发明的 特点为在新一代北斗卫星导航方式下, 解决了传统 GPS 导航单向通讯和依赖电信地面基础 设施双向通讯的局限性。 同时本发明具有远程主控室互联网边界法或操作者现场边界法确 定耕作地边界技术以及自动导航耕作轨迹确定技术, 本发明特别适于在全球卫星覆盖下的 大田环境使用。
图 1 中, 卫星导航农机自行走控制系统, 由嵌入式服务器 10、 CAN 总线接口单元 14 和 GPIO 总线接口单元 15 组成, 所述的嵌入式服务器 10 通过外扩有线控制总线 13 分别与 CAN 总线接口单元 (14) 和 GPIO 总线接口单元 15 连接, 11 为服务器的无线通讯天线, 12 为该服务器的使用界面输入按键。
图 2 中, 嵌入式服务器 10 由 32 比特的 RISC CPU16、 ROM 存储单元 7、 RAM 存储单 元 18、 北斗卫星通讯模块 19、 WIFI 无线通讯单元 20、 3G 无线通讯单元 21、 ASK 和 FSK 无线 通讯单元 22、 USB 接口 23、 UART 串行接口 24、 I2C 接口 25、 CAN 总线接口 26、 SPI 串行接口 27、 GPP 接口 28、 GPS 接口 29、 MAX232 电平转换单元 30、 RS232 接口 31、 485 串行接口 31 和 MAX485 差分串行接口 33 组成。
嵌入式服务器 10 分别与 32 比特的 RISC CPU16、 ROM 存储单元 7、 RAM 存储单元 18、 北斗卫星通讯模块 19、 WIFI 无线通讯单元 20、 3G 无线通讯单元 21、 ASK 和 FSK 无线通讯单 元 22、 USB 接口 23、 UART 串行接口 24、 I2C 接口 25、 CAN 总线接口 26、 SPI 串行接口 27、 GPP 接口 28、 GPS 接口 29、 MAX232 电平转换单元 30、 RS232 接口 31、 485 串行接口 31 和 MAX485 差分串行接口 33 连接。
图 3 中, 1 为北斗卫星导航覆盖区域 ( 或 GPS 覆盖区域 ), 2 为地球表面, 3 为该卫 星飞临导航区域时其数据采集覆盖区域, 4 和 5 分别为在该覆盖区域内的具有卫星导航自 行走能力的农机, 6 为在该覆盖区域外的具有卫星导航自行走能力的农机。
图 4 中, 新一代卫星导航农机自行走控制系统安装在农机驾驶室内, 7 为具有新一 代卫星导航自行走能力的农机, 8 为新一代卫星导航农机自行走控制系统嵌入式服务器, 该 服务器具有便携功能, 安置在农机驾驶室内。 也可以由使用者根据使用需要, 将其取下便携 使用, 作为测量农机工作地域, 计算农机自行走轨迹等, 9 为系统嵌入式服务器的无线通讯 天线。
图 5 所示为需要在卫星导航下自动耕作的土地, 其边界为矢量组 {Pi(Xi, Yi)|i = 0, 1, 2, ...N-1} 界定, 该矢量组数据可以有两种方式确定。一种由用户携带车载便携嵌入 式服务器绕场一周时, 经服务器实时卫星定位运算获得, 另一种方式为经过互联网上卫星 图像处理后获得 ; 耕作方向由方向矢量 D(x, y) 定义, 如图所示, 该方向矢量用户可以根据 需要自行设定, 图中的条格为根据方向矢量计算的耕作轨迹。
图 6 中, 卫星导航农机自行走控制系统的控制方法, 包括下列步骤 :
步骤 34 : 开启卫星导航农机自行走控制系统嵌入式服务器, 判断边界数据是否已 经输入, 如边界数据没有输入进入步骤 (35), 如果边界数据已经输入, 则进入步骤 (37) ;
步骤 35 : 判断是否从主控室服务器无线下载边界数据, 如果是从从主控室服务器 无线下载边界数据, 则进入步骤 (36) ; 如果不是从主控室服务器无线下载边界数据, 则进 入步骤 (39) ;
步骤 36 : 从主控室服务器无线下载边界数据, 数据下载结束后返回步骤 34 ;
步骤 37 : 判断是否耕作运行方向矢量已经定义, 如没有定义则进入步骤 38, 如已 经定义则进入步骤 41 ;
步骤 38 : 定义耕作运行方向矢量, 定义耕作方向矢量结束后进入步骤 41 ;
步骤 39 : 判断是否由操作员便携获取边界数据, 如果是操作员便携获取边界数 据, 则进入步骤 40, 如果不是操作员便携获取边界数据, 则返回步骤 34 ;
步骤 40 : 操作员便携获取边界数据, 便携获取边界数据结束后, 返回步骤 34 ;
步骤 41 : 计算耕作轨迹, 计算耕作轨迹结束后, 进入步骤 (42) ;
步骤 42 : 按照耕作轨迹计算结果, 控制自行走农机, 进行耕作 ;步骤 43 : 判断是否耕作全部完成, 如耕作没有全部完成则进入步骤 44, 如果耕作 全部完成, 则结束操作 ;
步骤 44 : 继续耕作。
新一代卫星导航农机自行走控制系统自动耕作原理如下 :
第1步: 获得将要耕作的土地的边界矢量组 {Pi(Xi, Yi)|i = 0, 1, 2, ...N-1}, 共 有两种获取方法。
边界矢量组获取方法一, 适于远程、 或主控制中心使用的互联网 GPS 边界法 :
1、 选 取 将 被 耕 作 的 土 地 上 的 GPS 经 纬 度 信 息 “种 子” (Seed point) 定 位 点 PGPS-SEED(j, w) = (j, w), 其中 j 为经度, w 为维度。该点的选取方法是 : 采用计算机鼠标配合 应用程序, 由操作者移动鼠标点击在将被耕作的土地上的任一点, 计算机应用程序记录该 点为 PGPS-SEED(j, w)。PGPS-SEED(j, w) 可以是将被耕作的土地上的任意一点。
2、 然后将此 PGPS-SEED(j, w) 输入到 Google earth map 或与其等同的卫星地面图像 中, 获取适当精度被耕作土地的卫星地面图像。 在此卫星地面图像上, 采用计算机鼠标配合 应用程序, 由操作者移动鼠标记录形成边界矢量组 {Pi(Xi, Yi)|i = 0, 1, 2, ...N-1}, 该边 界矢量组含有被耕作土地边界全部 GPS 数值。 边界矢量组获取方法二, 适于操作者本人使用的现场边界法 :
1、 操作者取下安装在农机驾驶室内微小型、 嵌入式自行走控制系统, 携带此嵌入 式控制系统, 步行到将被耕作的土地上任一点, 然后操作微小型嵌入式自行走控制系统 的用户输入按键, 经系统配置的计算机软件程序, 将该点的 GPS 经纬度信息 “种子” (Seed point) 定位点 PGPS-SEED(j, w) = (j, w), 其中 j 为经度, w 为维度, 记录在此嵌入式控制系统 中, PGPS-SEED(j, w) 可以是将被耕作的土地上的任一一点 ;
2、 获取边界矢量组信息。操作者携带微小型嵌入式自行走控制系统, 沿着将被耕 作的土地步行绕场一周。在行进开始时, 操作者由用户按键启动嵌入式系统的计算机软件 程序, 记录操作者绕场步行时移动形成的边界矢量组 {Pi(Xi, Yi)|i = 0, 1, 2, ...N-1}, 该 边界矢量组含有被耕作土地边界全部 GPS 数值。
第2步: 耕作方向矢量 D(x, y) 的确定方法。
方法一, 适于本系统在远程、 或主控制中心控制下使用的互联网法 :
在含有 PGPS-SEED(j, w) 点的被耕作土地的卫星地面图像上, 选取与耕作方向一致的、 在同一耕作轨迹上的起点矢量和终点矢量 Ps(x, y), Pe(x, y)。具体方法为在此卫星地面图 像上, 采用计算机鼠标配合应用程序, 由操作者移动鼠标在设想的耕作轨迹上起点矢量和 终点矢量 Ps(x, y), Pe(x, y) 处分别点击, 应用程序记录 Ps(x, y) 和 Pe(x, y) 矢量值, 并计 算方向矢量 :
D(x, y) = Pe(x, y)-Ps(x, y)...(1)
方法二, 适于本系统在操作者本人控制下的现场法 :
操作者取下安装在农机驾驶室内微小型、 嵌入式自行走控制系统, 携带此嵌入式 控制系统, 步行到将被耕作的土地上耕作启动点的适当位置, 然后操作微小型嵌入式自行 走控制系统的用户输入按键, 经系统配置的计算机软件程序, 将该点记录为起点矢量 Ps(x, y)。然后操作者携带微小型嵌入式自行走控制系统, 沿着选定的耕作方向步行 50 米, 在行 进结束时, 操作者由用户按键启动嵌入式系统的计算机软件程序, 记录操作者步行后形成
的终点矢量 Pe(x, y), 然后按照公式 1, 计算方向矢量 D(x, y)。
第 3 步、 耕作轨迹的自动计算。
含有两个部分, 其一为耕作轨迹间距的自动计算, 其二为每个耕作行的起始点、 终 止点的自动计算。
1、 耕作轨迹间距的自动计算。
1.1 计算正交方向矢量 Dp(x, y) 如下 :
Dp(xp, yp)D(x, y) = 0...(2)
式中为矢量点积, 即
xp*x+yp*y = 0...(2*)
1.2 计算无边界条件的耕作轨迹方程 Pnew(x, y) 如下 :
根据耕作方向矢量 D(x, y), 选择已知点 Ps(x, y), 建立通过已知点 Ps(x, y) 耕作 轨迹方程如下 :
Pnew(x, y) = Ps(x, y)+alpha*D(x, y)...(3)
式中 alpha 为 scaling factor, 该公式给出了通过已知点 Ps(x, y) 的无边界条件 的耕作轨迹方程 Pnew(x, y), 计算任意无边界条件的耕作轨迹方程如下 : 根据作物耕作间距要求 d, 计算 “锚位点” (anchor point), Pn-new(x, y) :
Pn-new(x, y) = Ps(x, y)+delta*Dp(x, y)...(4)
其中, Ps(x, y) 为已知点, Dp(x, y) 为公式 (2) 给出, delta 满足 : k*d = Ps(x, y)+delta*Dp(x, y), k = 1, 2, ..., N. 从而, delta = [k*d*Dp(x, y)-Ps(x, y)*Dp(x, y)]/ [Dp(x, y)*Dp(x, y)]...(4*)
根据 k = 1, 2, ..., N, 可以计算所有的无边界条件的耕作轨迹。
2、 每个耕作垄 ( 行 ) 的边界点 ( 起始点、 终止点 ) 的自动计算。
2.1 边界方程排序
取边界矢量组 {Pi(Xi, Yi)|i = 0, 1, 2, ...N-1}, 建立一族边界线性方程界定被耕 作土地 :
Pi(x, y) = Pi(x, y)+alpha*[Pi+1(x, y)Pi(x, y)]...(5) i
公式中 P (x, y) 的上标 i 表示其导出建立在已知点 Pi(x, y) 和 Pi+1(x, y) 之间, i 于是对边界矢量组 {Pi(Xi, Yi)|i = 0, 1, 2, ...N-1}, 共有一族点如下 {P (x, y)|i = 0, 1, 2, ...N-1}。
2.2 边界方程的交点自动计算
由公式 (4) 和 (5), 有 i
P (x, y) = Pnew(x, y)...(6)
即 Pi(x, y)+alpha1*[Pi+1(x, y)Pi(x, y)]
= Ps(x, y)+alpha2*D(x, y)...(6*)
式中 alpha1 和 alpha2 分别为对公式 (5) 和公式 (4) 的 scaling factor, 由 (6*) 可以解出其值为 alpha1* 和 alpha2*, 进而边界方程的交点为 : i i
P (x, y) = Pi(x, y)+alpha1 *[Pi+1(x, y)Pi(x, y)](7) i i
式 中 alpha1 为 对 应 P (x, y) 的 alpha1, 并 对 于 一 族 点 {Pi(x, y)|i = 0, 1, i i 2, ...N-1}, 有一族对应的 alpha1 , 即 {alpha1 |i = 0, 1, 2, ...N-1}, 该式给出了无边界条
件的耕作轨迹方程与所有一族边界线性方程所有可能的交点。
2.3 边界方程的 “感兴趣交点” (point of interests) 的自动计算
“感兴趣交点” 是无边界条件的耕作轨迹方程 Pnew(x, y) 与一族边界线性方程中 位于 Pi+1(x, y) 和 Pi(x, y) 之间的交点, 其物理意义是该点是耕作轨迹的起始点或终止点。 i 从公式 (7) 可知, {alpha1 |i = 0, 1, 2, ...N-1} 共定义了 N 个交点, 其中 “感兴趣交点” 为
0 < alpha1i < 1...(8)
根据此条件, 只有两个 alpha1i 满足此要求, 分别记录为 alpha1K 和 alpha1L, 即i = K, i = L 时为 “感兴趣交点” 。
2.4 边界起点和终点的自动判别
在两个 alpha1K 和 alpha1L, 即 i = K, i=L时 “感兴趣交点” 的起点和终点的自 K 动判断如下 : 当 alpha1 时的边界方程的交点自动计算时, 边界方程 (6*) 对应于 alpha1K 的 交点值有 alpha2K, 当 K
alpha2 < 0 时, 交点为起点 ; K
alpha2 > 1 时, 交点为终点 ...(9)
至此边界交点自动计算结束。