读取到的经纬度数据代入网格识别公式(2-7)和(2-8)中,算出拖拉机当前所在地块网格的行号N和列号M,分别存入单元CEH和CFH中,用来进行施肥量的查询。
4.2查表方式/IC卡存储
自动变量施肥模式下,施肥量Q以表格的形式写入单片机或IC卡。根据存储表格,第N行M列个网格的施肥量查询公式为:
(4-1)
其中,每个地块有 个施肥决策数据。
如德惠地块一共有12行6列网格,即有12行6列个施肥决策数据,每个数据分2列写入单片机或IC卡,则数据表是12行12列,得NM号网格施肥量为:
(4-2)
将施肥量查出,高位存入D2H,低位存入D3H,代入电机转速控制公式(2-6)中。
4.3键盘处理程序
当系统处于手动施肥模式下时,AT89C55WD单片机的P3.5脚处于高电平,施肥量Q由键盘给出。施肥量的百位、十位、个位分别放到BBH、BCH和BDH单元中,键的个数放到E3H单元中,然后进行显示和计算。流程图如图4.2所示。
4.4机具前进速度处理
手动施肥模式下,使用AT89c4051外部中断INT0实现机具速度的处理。T0定时/计数器工作于方式1,用来计接收到的脉冲个数。利用接近开关传感器测地轮转速得到机具前进速度公式为:
(4-3)
其中:v-机具前进速度(km/h);
D-地轮直径(m);
z-地轮每转脉冲数(个/转);
p-每秒传感器得到的脉冲数(个/秒)。
把每秒接收到的脉冲数存到4CH单元中,代入公式(4-3),得到机具前进速度值,存到48H单元中。然后主机经过译码器读速度值并存到D1H单元,将其代入式(2-6)中,用于计算控制电机转速。传感器子程序流程如图4.3所示。
通过对整个系统流程和各个功能块程序的分析,得到主程序流程图如图4.4所示。
第五章 调试环境
单片机在应用之前,必须按照相应的硬件对其进行编程后才能使用。编程调试的过程就是开发过程,需要有仿真器和编程器才能进行。仿真器分软件仿真器和硬件仿真器两种。硬件仿真器是开发调试的利器,软件仿真可以起到辅助调试的作用。软件仿真调试好后,还需固化后才能使用。
软件开发环境是Windows2000/XP下使用南京伟福E6000软件仿真器,它是集成了编缉器、编译器、调试器的调试环境。有众多强大软硬件调试手段,包括逻辑分析仪、跟踪器、逻辑笔、波形发生器、影子存储器、记时器、程序时效分析、数据时效分析、硬件测试仪、事件触发器等。支持汇编、C、PL/M源程序混合调试、软件模拟及项目管理等。
Wave6000编译器是可以对80C51系列单片机进行C语言编译,使用它可以缩短开发周期,降低开发成本,而且开发出的系统易于维护,可靠性高,可移植性好,即使在代码的使用效率上,也完全可以和汇编语言相比。硬件支持包括:南京伟福E6000硬件仿真器、北京润飞机电公司产的RF-810智能型通用编程器及编程软件、深圳澳汉R&W读卡器等。
第六章 总结与展望
变量施肥技术是精确农业技术的重要组成部分,对发展符合我国国情的变量施肥技术和实现农业可持续发展具有重要的理论意义和实用价值。本文在前人的研究基础上,借鉴国内外发展经验,结合吉林省科技基金等项目,以实现自动变量施肥作业的控制方法为研究对象,以自动变量施肥控制系统设计与地块网格识别和施肥机田间工作状态模拟为研究内容,进行自动变量施肥试验与示范。论文的主要研究工作和结论可以概括为: