楊 方,郭耀東,溫日宇,逯張禹,潘大豐
(1.山西省農業科學院農業科技信息研究所,山西太原030006;2.山西省農業科學院玉米研究所,山西忻州034000)
在以往示范推廣工作中,我們發現,農民種植玉米存在2大突出問題:一是選什么品種,一般是聽宣傳;二是粗放式施肥,一般靠自我感覺把握施肥種類與數量。前者忽視了土壤、水、肥等客觀條件;后者常常出現絕對施肥量不足或過量,或者相對施肥量不足或過量現象。絕對施肥量不足,滿足不了玉米生長的需要,絕對施肥過量,不僅造成浪費還會造成地下水污染和大氣升溫[1-4];相對施肥量不足和相對施肥過量,氮磷鉀各肥料元素不能平衡利用[5],同樣會造成浪費和達不到應有的增產效果[6]。總之,二者是制約玉米生產經濟效益提高的主要瓶頸。
本研究設計開發了一套玉米種植技術咨詢服務系統,旨在指導農民根據自己的土地、氣候條件,科學選用品種、精準施肥,從而提高土地產出率,增產增效,助推農民增收。
山西省農業科學院玉米研究所玉米種植技術推廣課題組長期從事玉米品種示范推廣工作,在山西省忻州市累計推廣超過33.3萬hm2。自2006年開始,我們進行了大量的測土施肥基礎工作,走訪忻州市忻府區20個鄉鎮、村和街道,對7 583個地塊進行了土壤樣品采集與制備以及土樣養分測試(采樣深度為0~20 cm),積累了完備詳盡的地塊基礎資料,最終整理形成測土配方施肥采樣地塊基本情況調查表、測土配方施肥土壤測試結果表等原始數據。同時,根據氣候、土質、水源等自然條件,篩選出207個適宜當地種植的高產高效玉米品種[7]。
玉米是高耐水肥且需肥量大的高產作物,實施平衡施肥是發揮玉米大幅增產的重要措施[8]。本系統以養分平衡法(又稱目標產量法)為理論基礎,采用土壤養分有效校正系數方法,根據玉米目標產量需肥量與土壤供肥量之差,估算目標產量的施肥量,通過施肥補足土壤供應不足的那部分養分。
需施肥量(kg/hm2)=(目標產量×單位產量需養分量-土壤供肥量)/(肥料養分含量×當季利用率)×15(1)
土壤供肥量(kg/hm2)=土壤養分測定值×0.15×校正系數×15(2)
根據我們多年研究和推廣經驗,公式(1)中單位產量需養分量確定為:N=0.025 7,P=0.008 6,K=0.021 4;肥料養分含量×當季利用率確定為:N=0.207,P=0.024,K=0.25。
對于施肥量合理性檢驗問題,以尿素為例,采取以下處理方法:若利用公式(1)計算出的尿素用量≥600 kg,以600 kg施肥;若≤300 kg,以300 kg施肥;若介于300~600 kg之間,按實際計算值施肥。對于公式(2)中的校正系數,以純氮為例,采取以下處理方法:若土壤養分測定值≥100,則校正系數為0.45;若≥60,則校正系數為0.61;若<60,則校正系數為0.72。
1.3.1 單性肥施肥計算方法 尿素含氮率采用46%,過磷酸鈣含磷率采用14%,硫酸鉀含鉀率采用50%,則可計算出尿素施肥量為全生育期總用量(N)/0.46,過磷酸鈣、硫酸鉀施肥量依此類推。
1.3.2 復合肥施肥計算方法 按照目標產量劃分3個層次,即目標產量≥12000kg/hm2;9000kg/hm2≤目標產量<12 000 kg/hm2;目標產量<9 000 kg/hm2。同時采用以磷定氮的方法,如果按照公式(1)計算出所需過磷酸鈣量≥0視為缺磷,否則視為不缺磷;如果按照公式(1)計算出所需硫酸鉀量≥300視為缺鉀,否則視為不缺鉀,最終確定氮磷鉀比例。具體內容參照表1,2,3。
(1)目標產量12 000 kg/hm2以上復合肥選肥方法列于表1。
(2)9 000 kg/hm2≤目標產量<12 000 kg/hm2復合肥選肥方法列于表2。

表1 12 000 kg/hm2 以上地塊的復合肥氮、磷、鉀比例

表2 9 000~12 000 kg/hm2 地塊的復合肥氮、磷、鉀比例
(3)目標產量9 000 kg/hm2以下復合肥選肥方法列于表3。

表3 9 000 kg/hm2 以下地塊的復合肥氮、磷、鉀比例
本系統采用了基于規則的知識表示,知識采用產生式表示:IF(前提1)&(前提2)&……THEN(結論1),其中,IF子句部分為前件,THEN子句部分為后件[9]。
將規則以產生式的形式存儲在知識庫中[10],以“智能推薦適宜品種模塊”為例,規則是:如果地塊的地貌類型為高原,并且不具備灌溉條件,則推薦生育期小于120 d、具有抗旱性、產量在4 500~6 750 kg/hm2之間的玉米品種。則產生式是:IF landform==“高原”AND irrigation==“不滿足”THEN SELECT dryAnti==1 AND growthSeason<120 AND 4 500≤yield≤6 750。其中,landform表示“地貌類型”,irrigation表示“灌溉條件”,dryAnti表示“品種抗旱性”,growthSeason表示“品種生育期”,yield表示“品種產量”。
本系統采用主流B/S架構(Browser/Server,即瀏覽器/服務器),即在Browser客戶端實現極少數事務邏輯,把顯示邏輯交給Web瀏覽器,以構成瘦客戶端,在Server服務器端實現主要的事務邏輯。B/S架構的系統優點是用戶使用簡單,有Web瀏覽器即可,無需安裝其他軟件。本系統開發語言以VS2008C#為主,兼用JavaScript語言,數據庫采用Access。
從提高系統運行效率、精簡代碼角度考慮,我們構建了2個使用頻率較高的類為DataBase類和Conl類。前者是訪問數據庫類,用于隔離數據訪問層和業務邏輯層,主要提供打開數據庫、關閉數據庫、建立數據集、建立虛擬表、更新數據庫等功能;后者是常量類,主要提供統一的變量訪問方式,便于日后代碼管理與維護。
同時,設計了7個主要方法。一類用來計算玉米生育期內純氮(磷、鉀)需求量(computeN,computeP,computeK);一類用來計算并檢驗尿素(過磷酸鈣、硫酸鉀)實際需求量(verObjUrea,verObjCal-SupP,verObjPotSulph);一類用來計算底肥施用量、追肥施用量(get_tjdf,get_tjzf)。
測土配方施肥采樣地塊基礎數據從2006年開始整理至今,時間跨度較大,存在一些數據錄入不準確問題。為保證數據的真實性和有效性,通過仔細辨別并剔除了2 000多條不完整或錯誤的地塊信息。最終形成3個基本表:測土配方施肥采樣地塊基本情況表、測土配方施肥土壤測試結果表和玉米品種基本情況表(Excel格式)。
測土配方施肥采樣地塊基本情況表主要包括:統一編號、調查組號、采樣調查人、采樣日期、采樣深度、鄉(鎮)名稱、村名稱、農戶名稱、地塊名稱、地塊位置、北緯、東經、海拔、地貌類型、坡向、常年降雨量、常年有效積溫、常年無霜期、排水能力、灌溉能力、水源條件、灌溉方式、常年產量水平、地塊面積等。測土配方施肥土壤測試結果表主要包括:統一編號、取樣層次、pH值、陽離子交換量、電導率、水溶性鹽分總量、有機質、全氮、堿解氮、全磷、有效磷、全鉀、緩效鉀、速效鉀、有效鐵、有效錳、有效銅、有效鋅等。玉米品種基本情況表主要包括:品種名稱、生育期、千粒質量、耐旱性、絲黑穗病、大斑病、莖穗腐病、適宜留苗密度、審定、選育單位、產量表現、蛋白、脂肪、淀粉等。
通過把以上Excel文件轉換為Access數據格式,形成tb_blockBasic(測土配方施肥采樣地塊基本情況表),tb_blockFertility(測土配方施肥土壤測試結果表)和tb_cornSeed(玉米品種基本情況表)3個Table,字段類型主要有文本、數字2種類型,將地塊“統一編號”作為主鍵。
進入訪問平臺后,(1)首先,選取某個地塊;(2)系統根據該地塊自然屬性,為用戶推薦一個品種集合(以產量表現排序);(3)選取品種完成后,系統推薦一個最佳的目標產量以供用戶參考,輸入預期目標產量;(4)最后,系統將生成一份針對該地塊的玉米選種施肥方案,提供詳細的玉米種植技術咨詢信息。
本系統主要包括選取地塊、智能推薦適宜品種、智能推薦適宜目標產量、玉米種植技術咨詢方案4大模塊,呈遞進關系,使用時通過“下一步”或“后退”方式操作。
4.2.1 選取地塊模塊 用戶通過三級聯動下拉列表框方式,依次選擇鄉鎮名稱、村名稱、地塊名稱,然后在彈出的GridView表格里選擇農戶,確定“地塊—農戶”的一一對應關系(存在同一地塊歸屬多個農民現象)。
4.2.2 智能推薦適宜品種模塊 系統將根據所選地塊的地貌類型、灌溉能力等信息,從品種表智能挑選生育期、產量、抗旱性等符合該地塊的品種供用戶選擇,同時,提供品種詳細信息,如生育期、耐旱性、絲黑穗病、大斑病、莖穗腐病、選育單位、產量表現等供用戶參考。
4.2.3 智能推薦適宜目標產量模塊 系統將根據用戶所選地塊條件、所選品種產量表現等信息為用戶提供一個最佳目標產量值,也可通過點擊“產量標簽”(50進制)選擇目標產量。
4.2.4 玉米種植技術咨詢方案模塊 其分為土壤養分測試數據、玉米推薦選種施肥方案2部分。其中,土壤養分測試數據部分顯示鄉鎮、村、地塊名稱、農戶姓名、北緯、東經、有機質、堿解氮、有效磷、速效鉀等基礎信息;玉米推薦選種施肥方案顯示所選品種、目標產量、留苗密度、全生育期總用量(純氮、五氧化二磷、氧化鉀),為用戶提供詳細的復合肥和單性肥的施肥方案,其中,復合肥施肥方案提供基肥氮、磷、鉀比例以及基肥數量和追肥數量,單性肥施肥方案提供基肥數量(尿素、過磷酸鈣、硫酸鉀)和追肥數量。
在VS2008環境里,通過IE瀏覽器訪問Cookie正常,但發布成網站后,Cookie在頁面間傳遞值時出現“未將對象引用設置到對象的實例”錯誤。查看Server 2003系統中的Cookies日志,發現傳遞中英文字符的Cookie值顯示正常。但在“解決方案資源管理器”中“ASP.NET配置”啟用調試后,發現“請求Cookies集合”、“響應Cookies集合”中的中文字符顯示亂碼。ASP.NET使用Cookie傳遞中文字符串時,必須進行URL編碼和解碼,否則就會亂碼,導致傳遞失敗[11]。編碼使用HttpUtility.UrlEncode(String),解碼使用HttpUtility.UrlDecode(String),最終問題可以得到解決。
從簡單易用、減輕服務端網絡負載角度考慮,系統采用jQuery+XML異步請求技術實現鄉鎮、村、地塊三級無刷新聯動[12]。根據忻州市忻府區行政區域規劃、地塊歸屬關系(覆蓋20個鄉鎮、村和街道),把7 583條地塊記錄整理為XML格式文件實現聯動關系,結合編寫JavaScript腳本,利用jQuery技術實現了三級無刷新聯動功能。
本系統現已投入運行,訪問地址http://202.97.135.76:8081/welcome.aspx,系統以實測土壤養分數據、區域示范推廣經驗為基礎,結合養分平衡理論,因地制宜為忻州市忻府區當地農民提供了一個科學選種、科學施肥平臺。實踐應用證明,此平臺有利于提高玉米產量和質量、實現節本增效、增加農民收入。我們下一步工作將結合GIS,GPS等技術完善該系統,提高其地圖化、可視化、直觀化程度,進一步擴大測土范圍,為更加廣大的玉米種植戶提供服務。
[1]董玉紅,歐陽竹,李運生,等.肥料施用及環境因子對農田土壤CO2和N2O排放的影響[J].農業環境科學學報,2005,24(5):913-918.
[2]張志劍,王光火.嘉興地區水稻土磷素狀況與環境效應評價[J].科技通報,1999,15(5):377-381.
[3]Gao X J,Hu X F,Wang SP,et al.Nitrogen losses from flooded rice field[J].Pedosphere,2002,12(2):151-157.
[4]Roelck M,Han Y,Schleef K H,et al.Recent trends and recommendations for nitrogen fertilization in intensive agriculture in eastern China[J].Pedosphere,2004,14(4):449-460.
[5]王忠春.玉米的平衡施肥[J].養殖技術顧問,2012(11):237.
[6]楊兆順,吳俊強,錢芳,等.不同施肥制度對土壤肥力及玉米產量的影響[J].華北農學報,2010,25(1):208-210.
[7]郭耀東.稀植大穗型玉米品種的品比試驗[J].山西農業科學,2006,34(3):33-35.
[8]黨敏霞,劉月樓.玉米配方施肥對比試驗初探[J].內蒙古農業科技,2011(5):83-84.
[9]Michael Negnevitsky.人工智能:智能系統指南[M].陳薇,譯.3版.北京:機械工業出版社,2012:62-113.
[10]蘇恒強,朱春嬈,陳桂芬,等.玉米精準施肥專家系統的研究[J].廣東農業科學,2010(3):99-101.
[11]Richard Kiessig.構建高性能可擴展ASP.NET網站[M].余昭輝,譯.北京:人民郵電出版社,2011:71-72.
[12]單東林,張曉菲,魏然.鋒利的jQuery[M].北京:人民郵電出版社,2009:174-207.