1緒論
1.1 研究背景和意義 農業農村部辦公廳關于印發《國家畜禽良種聯合攻關計劃(2019-2022 年)》的 通知中,明確指出應立足于我國現代種業長遠發展需求,積極開展瘦肉型種豬智能 測定、種豬大數據遺傳評估和豬種質資源分子鑒定等理論和應用技術研究,提升我 國畜禽種業國際競爭力(中華人民共和國農業農村部公報2019) o良種對畜禽生產 效益的貢獻率高達 40%,黨和國家一直致力于生豬產業和種業的可持續發展(周磊 等2021) o種豬性能測定是準確挑選優質種豬的必經之路,是提高養豬生產效率 和經濟效率的一項有力技術措施。養豬發達國家已建立了完善的育種體系,根據市 場需求不斷地挖掘新的育種目標和選擇性狀,通過持之以恒的開展種豬性能測定和 基因組選擇等方法相結合,實現了種豬綜合性能和養豬生產水平的不斷提升。
《全國生豬遺傳改良計劃(2009—2020)》實施方案頒布以來,越來越多的企業 和科研單位投入更多資源用于研究種豬育種工作,但由于我國種豬育種工作起步較 晚,與養豬發達國家仍有一定差距(丁向東等2020) o目前我國種豬性能測定設備 主要有美國OSBORNE公司FIRE系統和荷蘭睿保樂Nedap PPT系統、法國ACEMO 公司 Acema64 系統,國產設備較少(劉望宏等 2014),其配套的種豬性能測定信息 管理系統的主要功能是根據種豬耳標建立種豬生長性能測定記錄,根據種豬的采食 和體重數據計算種豬的增重、飼料轉化率和日增重指標。雖然自動性能測定設備能 夠準確地稱量種豬每次的采食量和體重,從而獲取種豬的飼料轉化率。但是此類設 備的使用涉及到了電子信息、數據管理等方面,對現場測定人員提出了更高的要求, 而大多數育種場并沒有為此設備配備專業的技術人員,容易出現數據鏈中斷、采食 量或體重值異常等情況,導致我國每年的種豬測定數量逐年增長,但有效的測定數 據卻沒有明顯增加,并且未對測定數據進行深入的分析,數據的利用效率低(王獻 偉等 2019)o
采食是動物獲取自身所需營養的重要方式,也是動物生長狀態和健康水平的量 化基礎。研究表明,生豬采食行為與遺傳背景、養殖條件(光照、溫濕度、有害氣 體、飼養密度等)、飼料水平(飼料成分、適口性等)、以及動物生長階段和健康狀 態等有關,且具有中度至高度的遺傳性(時超2016) o在進行種豬性能測定時,測 定站將獲取測定種豬的采食量和體重信息,通過這些記錄數據可以分析采食行為性 狀與生長性能性狀之間關系。合理挖掘和分析種豬采食信息,有助于了解種豬采食 行為習性,進而展開精準飼喂,為其提供最適宜的養殖條件,提高養殖育種效率, 因此亟待需要一個種豬性能測定信息管理系統將采食性狀分析與性能測定相結合, 挖掘種豬測定數據,提高數據利用效率。
結合非洲豬瘟生物安全防控常態化下對設備遠程監控的需求,利用物聯網技術、 信息技術和云技術開發一個集種豬生長性能測定性狀計算、采食性狀分析和設備遠 程監控為一體的信息系統,以期加快我國種豬育種由“經驗育種”向“精確育種” 轉變,為我國生豬育種體系優化升級提供參考和借鑒。
1.2 國內外現狀
1.2.1種豬性能測定信息管理系統現狀
種豬性能測定是將待測種豬置于飼養環境和飼料水平相同的條件下,測量目標 經濟性狀的全過程(Boumans IJMM et al 2018),是客觀評定種豬遺傳育種工作的基 礎,歐美等發達國家已形成較為成熟的種豬性能測定育種體系(Merks et al 2012)。 種豬性能自動測定設備是集電源、機械結構、電子控制和計算機技術為一體的跨行 業和多學科制造的現代化設備(李寧 2016)。根據飼料種類的不同,一臺測定站可 同時測定12-15頭豬。測定站基于RFID射頻技術識別測定豬身份,稱量模塊對測定 豬的體重和飼料消耗量進行稱量,并傳輸至其專用的軟件中,經軟件分析后,給出 各測定豬在測定期內的日增重和飼料轉化率等生長性狀表型值。目前我國種豬性能 測定設備主要依賴國外進口,國內設備較少。以下對我國目前使用較為廣泛的種豬 性能測定設備配套的種豬性能測定信息系統進行介紹。
如圖1-1所示為法國Acemo公司開發的ACEMA64、128種豬信息管理系統, 64和128代表一個中心電腦所能管理的主機數量。該軟件需在電腦上安裝配套的安 裝包后才能進行使用,對測定豬日常發生的數據進行真實的記錄和存儲,不支持人 為修改數據,并且基本沒有數據分析能力,還不具有完善的中文版本。測定設備采 集的測定數據首先存儲在記憶盤中,能存儲15頭豬150d的日進食量和進食總量, 然后人工將測定數據傳輸至軟件中進行數據分析。
圖 1-1 ACEMA 種豬性能測定信息管理系統
Fig.1-1 ACEMA breeding pig performance measurement information management system
如圖1-2所示為美國Osborne公司研發的種豬性能信息管理FIRE系統,它采用 消除“數據收集錯誤”功能自動清除FIRE系統認為不合理的數據,并支持人為修改 數據,具有飼料轉化率、日增重計算,飼料消耗統計、體重變化趨勢等分析功能, 已有現成的中文軟件,但需在配套的電腦上安裝后才能使用。每個測定站通常能存 儲1500個事件,當測定站存儲的采食事件數量超過 1500次時,新數據將覆蓋舊數 據,導致數據丟失,因此需要人工及時將測定站內數據傳輸至FIRE系統。
圖 1-2 Osborne Fire 種豬信息管理系統
Fig.1-2 Osborne Fire Breeding Pig Information Management System
如圖1-3所示為荷蘭Nedap公司開發的種豬信息管理Nedap PPT系統,無需安 裝特定軟件,使用瀏覽器即可訪問其信息系統。實時采集種豬測定數據,并根據種 豬采食量和體重變化統計測定期間的日增重和飼料轉化率,并對測定豬進行排序。 可在線訪問系統,可靠的互聯網連接是其系統運行的必備條件,測定數據存儲在數 據庫和云中,可供用戶隨時隨地登錄和管理軟件界面以查看生產情況。
圖 1-3 Nedap PPT 種豬信息管理系統
Fig.1-3 Nedap PPT breeding pig information management system
如圖 1-4 所示為廣東省農業機械研究所開發的 9ZC-170 型種豬信息管理系統, 需要在 Windows XP 環境下安裝運行,具有飼料消耗量柱狀圖、體重變化曲線圖等 分析功能,并通過設置最低采食量對豬進行早期預警,采用中文操作平臺。比較符 合我國育種人員使用習慣,種豬場人員經過簡單培訓后,即可使用。
圖 1-4 9ZC-170 型種豬信息管理系統
Fig.1-4 9ZC-170 Breeding Pig Information Management System
部分種豬性能測定信息系統目前還沒有完善的中文版本,我國育種人員在使用 時仍存在一定難度,導致此類設備在我國的使用情況不容樂觀。雖然種豬性能測定 站的精確性滿足我國種豬性能測定要求,但自動測定設備的高精確性不能代表種豬 測定數據的正確性和可靠性。不少學者對此類設備在使用過程存在的問題進行探討, 提出需要對日常的測定數據進行合理的監控和分析,進而提高測定數據的質量確保 測定工作的有效性(楊曉丹 2018)。具體問題如下:
(1) 數據鏈中斷是指種豬缺失部分測定期間的生長性能數據,直接影響種豬的 采食量,導致飼料轉化率計算有誤。
(2) 數據信息缺損(零耳牌事件),屬于測定過程中的常見故障,造成原因是 有自動測定設備故障(電子耳標讀取故障、電子耳標損壞等)或種豬電子耳標掉落 等。
(3) 單次采食量異常,受自動測定設備粘連或飼料稱量模塊故障等原因導致種 豬的單次采食量超出正常范圍,具體表現為種豬的采食量為負或單次采食量過大。
(4) 相鄰采食量、體重變化過大,體重稱量模塊故障或種豬行為(兩只種豬同 時進入測定站內)導致相鄰兩次采食時體重變化較大。
(5) 部分種豬性能測定系統所采集的測定數據需要人工將其傳輸入電腦端,信 息系統才可進行數據分析,數據不能實時查看和統計,并且若不及時傳輸則會導致 后面的數據覆蓋之前的數據,導致部分測定數據丟失。
(6) 種豬登記時數據錯記、漏記,現有種豬性能測定信息系統大多根據種豬電 子耳標建立個體測定記錄,未對種豬的身份信息進行采集,大多采用人工記錄然后 錄入育種系統。人工登記過程中存在①種豬號重復使用,即現有種豬和出欄種豬使 用相同的種豬號;②種豬號登記時不滿足全國生豬遺傳改良中心的15位登記規則, 種豬號長短不一,存在8位、13位或為空等現象;③種豬的出生日期為空;④開測 日期或結測日期登記錯誤等問題。
綜上,現有的種豬性能測定信息管理系統從功能上來說差異不大,基礎功能為 根據測定豬只的 RFID 電子耳標采集測定期間的采食和體重記錄,進而計算種豬在 測定階段的日增重和飼料轉化率;分析功能較少,如飼料消耗、體重變化趨勢等; 且 ACEMA、 OSBORNE 和 9ZC-170 型測定站均需要人工將測定數據傳輸至信息系 統,并且需要安裝專用的軟件后在特定的電腦上才能進行使用,數據查詢的實時性 相對較差,而且僅限在豬場內使用,并對電腦性能有一定要求;睿保樂則無需安裝 額外的軟件,使用瀏覽器即可訪問,但對豬場的網絡條件要求較高。
1.2.2豬采食性狀分析現狀
采食行為是生豬行為習性最具豐富信息的載體,探究生豬采食行為特性和規律, 為其創造最適宜的養殖條件,指導生豬健康、精準養殖,進而提高生豬養殖業生產 效率和經濟效益(Andretta I et al 2016,馮澤猛等2021)。種豬性能測定站的推廣 使用,為生豬采食行為學研究提供了有力的量化基礎,正確了解豬只的采食行為特 性和生長性能性狀之間的關聯關系,可以為研究豬群采食調控機制、開展間接測定 進而簡化生長測定性狀、提高豬群生產性能提供理論參考依據(時超 2016, Silva et al 2019)。
豬只的采食特性通常包括采食量大小、采食時間分布和采食頻率等,大多數學 者針對不同條件下豬只的采食特性展開了研究(Stygar AH et al 2018)。采食量對豬 生產水平具有顯著影響(Ratanpaul et al 2019)。采食行為首先與其遺傳背景有關, 如不同品種的豬只采食特性存在顯著差異,但同一品種不同性別的豬采食特性卻無 明顯差異(Meunier-Salaun MC et al 2014,時超2016);豬采食量與體重增長呈現 相同變化趨勢,但不同學者對于豬每天采食次數討論結果存在差異;生豬喜光,采 食行為呈現明顯的晝夜節律性變化,采食活動大多在白天進行,夜間采食較少,但 全天皆有采食行為發生(Piles et al 2020);攝入含有升糖較快的飼料成分,會降低 豬的采食欲望,增加探究行為(Souza da Silva et al 2014);養殖環境是生豬養殖過 程中相對容易控制的因素,環境溫濕度對生豬的采食行為具有顯著的影響,冷應激 環境下,豬的日采食量在冷應激和熱應激條件下均會降低,但采食次數和采食速度 卻表現相反(司徒金水等 2021)。生豬是社會性群居動物,具有明顯的社會效應和 等級(Angarita BK et al 2021 ),社會地位通常通過爭斗行為來建立(Sche田er K et al 2016),而社會地位的高低常與采食特性差異有關,如 Hoy 等指出具有高社會等級 的豬與低社會等級的豬相比,占據采食器時更有優勢,使得單次的采食量相對更多, 不易受其他豬只影響,日均采食次數更少(Hoy S et al 2012) ; Angarita等認為當兩 頭豬退出和進入測定站進行采食的時間差小于1分鐘時,則兩頭豬之間存在社會效 應 (Angarita et al 2021)。
生豬采食行為特性具有中度至高度的遺傳性,并且與生長性狀具有密切關系。 時超分析了杜洛克、長白和大白豬的采食性狀與生長性狀的表型相關,但相關程度 不同,如日采食量與種豬的生長速度呈現顯著負相關,而與飼料轉化率無顯著相關 性(時超2016); Herrera-Caceres等提出加入采食性狀將提高種豬生長性能育種值 估計的準確性(Herrera-Caceres et al 2020); Lu等指出種豬飼料轉化率與其每天的 采食時長和采食次數有很強的遺傳相關性,因此在不測量種豬個體采食量的情況下, 可以使用采食行為指標作為飼料轉化率的選擇指標。在育種過程中,通過分析豬群 的采食特性和生長性狀間規律,進而開展間接測定,簡化測定性狀,對于降低育種 成本十分重要( Lu et al 2017)。
進行種豬生長性能測定時,測定站將獲取測定豬只的采食量和體重信息,合理 利用種豬性能測定數據,不僅可用于分析不同條件下豬群的采食特性差異,為其提 供最適宜的飼養環境,展開精準飼喂,進而提高我國生豬養殖效益;還可用于探索 豬群采食特性與生長性狀間的關聯關系,對于簡化種豬生長性能測定性狀具有重要 意義。
1.2.3物聯網技術在畜牧業應用現狀
隨著信息技術的普及與應用,利用現代信息技術解決當前畜牧業中存在的問題 和不足,對加快推動和實現廣泛的精準畜牧的進展具有重要意義(張小栓等 2019)。 精準畜牧即結合精準農業的思想、動物科學和信息技術,針對每個個體進行定時、 定量最優化的科學管理與養殖,降低養殖成本獲得最高的經濟和環境回報。精準畜 牧主要基于不同類型的傳感器采集養殖環境參數(溫濕度、光照強度和氨氣濃度等) 以及體征行為(視頻、質量和體溫等),然后使用無線或有線通訊技術將環境或體征 參數實施遠程傳輸,對數據進行分析后,在手機APP或網頁上對數據進行可視化展 示、遠程環境控制或進行育種數據挖掘與應用(高萬林等 2015, 何東健等 2016)。
養殖環境監測是精準畜牧實現的基礎條件,利用物聯網技術,對養殖環境參數 進行實時監控,是養殖過程中相對容易控制的環節,發展相對較為成熟(Lysenko AI et al 2014, 馮澤猛等 2021)。如李華龍等針對層疊式雞舍的復雜結構,基于物聯網 技術設計了一種拓撲結構的蛋雞養殖環境監控系統,用戶可通過網頁對雞舍內溫度、 CO2和氨氣濃度等環境參數在線監測(李華龍等2015);郭彬彬等采用GPRS傳輸 種鵝生產舍的環境參數,并通過構建 BP 神經網絡實現了溫濕度的智能調控,用戶 通過瀏覽器訪問環境監控系統(郭彬彬等 2017);龍長江等利用傳感器采集畜禽養 殖場內環境參數數據,并通過WIFI模塊將監測數據上傳至云服務器,用戶訪問網頁 即可訪問環境監測系統(龍長江等 2021)。對養殖環境進行實時監控,進而對濕簾、 風機等優化控制,實現養殖環境遠程閉環控制,為畜禽動物營造最適宜的養殖環境, 避免由于養殖環境條件變化導致的生產損失(李瑾等 2015)。
在種畜群體的遺傳分析方面,物聯網技術在種畜的生產數據管理和集成分析應 用較為廣泛(熊本海等 2015)。如智能母豬電子飼喂站通過智能化的數字控制,可 以通過移動智能終端根據每頭母豬的不同營養需求展開具有差異的個性化飼喂,如 飼喂次數、每次的飼喂量等,遠程查看每頭母豬的采食數據,實現了母豬精準飼喂。 在種畜生產數字化與云分析計算方面,國外從20世紀就開始使用信息技術對種群進 行信息化管理,為后期云計算和大數據分析奠定了數據基礎。奶牛精準飼喂物聯網 系統對奶牛的發情、擠奶等進行在線監測,如阿非牧奶牛管理系統,該系統與擠奶 設備結合,實現了采集、傳輸和數據分析的高度集成(Shortall et al 2018)。在種豬 生產的信息化方面,最具代表性的系統有西班牙農業技術軟件控訴開發的porcitec系 統和新西蘭開發的種豬場pigwin系統(Engblom L et al 2009)。在國內,中國農業 大學最早開始開發種豬育種軟件一一GBS系統,隨著信息技術的發展不斷進行版本 更新,將信息技術與現代育種理論較好地融合(于冰 2015)。
融合信息技術是推動精準畜牧發展的必然要求,將物聯網、通信和云計算等新 一代信息技術應用于種豬性能測定設備,有助于提高種豬性能測定設備的智能化程 度和種豬測定效率。
1.3論文研究內容與技術路線
1.3.1論文研究內容
本設計在課題組自我研制的封閉式種豬性能自動測定設備上開展,測定設備對 豬只的采食信息和體重信息進行精確的測量。結合非洲豬瘟生物安全防控常態化下 對設備遠程監控的需求,利用物聯網技術、信息技術和云技術開發一個集種豬生長 性能測定性狀計算、采食性狀分析和設備遠程監控為一體的信息系統,不僅可以用 于生豬育種選育、飼料配方試驗,還可用于探索不同品種、個體、生長階段豬只的 采食性狀差異等。主要研究內容如下:
(1) 種豬性能測定信息管理系統現狀與需求分析。分析國內現有使用率較高的 幾款種豬性能測定軟件,總結此類信息管理系統在實際育種過程中使用時存在的不 足和待解決的問題,并結合農業農村部種豬質量監督檢驗中心(武漢)的實際使用 需求,明確本研究所開發的種豬性能測定信息管理系統的具體功能和設計要求。
(2) 種豬采食性狀與生長性狀關聯分析。通過農業農村部種豬質量監督檢驗中 心(武漢)杜洛克種豬的測定數據分析種豬5個采食性狀(ADFI、AOTD、ANVD、 AFIV和ADFR)與4生長性狀(FCR、BF、ADG和AGE100)之間的相關關系;并 基于生長速度(ADG和AGE100)與采食性狀的顯著相關性,使用種豬開始測定后一 個月的采食性狀與生長性狀構建種豬達 100 kg 體重日齡預測模型,提前對種豬的生 長速度進行預測。
(3)種豬性能測定信息管理系統開發與試驗。選用目前成熟的web框架完成信 息管理系統開發,系統開發主要包括信息管理系統與測定站之間數據雙向傳輸協議、 數據庫結構設計、信息管理系統數據邏輯處理和頁面設計。信息管理系統開發完成 后,對系統通信可靠性和功能穩定性進行測試,確保測定數據無丟失,并且各功能 達到預期設計要求,滿足實際種豬性能測定使用需求。
1.3.2技術路線
本文開發的種豬性能測定信息管理系統技術路線如圖1-5所示。
圖 1-5 技術路線圖 Fig.1-5 Technique routing
2種豬性能測定信息管理系統需求分析
需求分析處于軟件開發整個生命周期中相對靠前的階段,是保證一個信息管理 系統滿足設計要求的關鍵環節,倘若缺少了系統的功能需求分析,那么后期的開發 速度將會受到嚴重的影響。本文旨在設計一個不僅可以用于種豬性能測定的種豬信 息管理,還可對測定設備進行實時監控以及對種豬采食性狀進行分析的多功能種豬 性能測定信息管理系統。因此基于本文的設計目標,分別從用戶、測定站實時監控、 種豬性能測定和種豬采食性狀分析方面對系統進行功能需求分析。
2.1種豬性能測定信息管理系統業務流程
根據對種豬質量監督檢驗中心(武漢)種豬性能測定工作的調查,種豬性能測 定流程為待測種豬進入測定站后,經訓練期適應在測定站內采食后正式轉為測定模 式。測定過程中種豬采取自由采食,其采食具有不定時性,并且全天皆有采食行為 發生。種豬在測定前需要采集種豬的個體身份信息,包括出生日期、個體號、測定 編號和耳標號。種豬性能測定信息管理系統不僅要完成與用戶的交互,響應用戶請 求,還將與種豬場內各測定站保持實時通信狀態,對測定站內數據進行采集和功能 響應。信息管理系統的數據來源包括測定站所發送的各類數據和用戶在系統頁面所 填報的信息。種豬性能測定信息管理系統的主要工作流程如圖 2-1 所示。
邏輯處理
MySQL數據庫
進行圖表化展示
圖 2-1 信息管理系統工作流程圖
Fig.2-1 Work flow chart of information management system
2.2用戶模塊需求分析
種豬性能測定信息管理系統主要面向育種人員,用于管理育種場內測定設備與 測定豬只,但存在需要將測定豬只的相關信息向其他人員進行展示等情況,用戶模 塊具體需求如下:
(1) 不同的用戶等級。考慮測定數據泄露問題,對不同的使用對象賦予不同的 系統操作權限,系統提供兩種系統操作等級——高級管理員和普通用戶,高級管理 員限制普通用戶可查詢的基礎數據源。
(2) 用戶注冊。普通用戶能夠在信息系統中通過輸入用戶名、密碼、手機號和 email完成自主注冊,其中用戶名、手機號和email均不能重復使用,確保用戶的唯 一性;此外,應對用戶信息進行加密處理,保證用戶信息安全。
(3) 用戶登錄。用戶在系統登錄界面使用用戶名和密碼進入種豬性能測定信息 管理系統首頁——測定站監控頁,并根據用戶等級賦予其不同的系統操作權限。
(4) 用戶找回密碼。當用戶遺忘登錄密碼時,系統提供通過郵件找回密碼功能, 重置系統登錄密碼。
2.3種豬生長性能測定分析需求分析
種豬進入測定站后,測定站內的 RFID 射頻模塊將讀取其電子耳標,并稱量其 體重和飼料重量,記錄種豬進入測定站時間,待種豬采食結束,退出測定站時,記 錄其采食結束時間并稱量飼料重量,從而計算種豬此次采食量,并將此次采食測定 數據發送至信息管理系統。那么一次完整的采食測定數據包括:種豬耳標號、測定 站號、體重(kg)、采食開始時間、采食量(g)、采食結束時間。根據種豬測定期間 的體重變化和采食量變化計算種豬的日增重和飼料轉化率兩個生長性能指標。
種豬測定數據量大但單個數據的信息價值低。由于測定站在整個測定期內對種 豬進行全天候測定,所產生的采食測定記錄多,但單條采食記錄的信息量價值量卻 很低,無法對每條數據進行分析。因此,應該嚴格把控測定數據的質量,確保每條 測定數據均成功采集,對異常數據進行分析和處理,并且增加種豬身份采集功能, 避免人工登記種豬身份信息時的錯記、漏記等。對信息系統的種豬生長性能測定模 塊提出以下功能需求:
(1) 測定數據的可靠傳輸。在測定數據采集方面添加嚴格的傳輸協議,確保每 條測定記錄均成功自動采集存儲至數據庫中,無需人工操作,為后續的數據分析提 供可靠的數據源。
(2) 種豬身份信息登記。增加種豬入欄和出欄功能,其中入欄對種豬的身份信 息進行采集,包括15位種豬號、電子耳標號、測定編號(耳缺號)和出生日期,并 對種豬號進行唯一性檢查,出生日期采用日期控件進行選擇,并對填寫數據進行長 度檢查,提高數據的規范性和有效性。
(3)測定記錄實時統計。根據種豬的采食行為實時統計其每天的采食和體重記 錄,包括采食總量、采食次數、采食時長、相鄰日采食變化量、相鄰日采食變化百 分比、體重均值、相鄰日體重變化量和相鄰日體重變化百分比,并根據種豬號建立 每天的測定統計記錄后存儲至數據庫中。
(4)生長性狀指標計算。根據用戶所選擇的查詢條件統計種豬任意階段生長性 狀表型值。
2.4測定站實時監控需求分析
非洲豬瘟給我國造成了巨大的經濟損失,嚴重影響了種豬性能測定工作的正常 開展。種豬性能測定周期一般為 2 到 3 個月,測定周期較長,并且設備運行環境較 為惡劣,容易出現老鼠咬壞設備線路或豬只行為導致設備器件損壞等問題。而人工 對測定設備進行監控不能及時發現設備故障,且出現故障時難以定位具體故障原因, 導致豬只無法采食,影響測定工作的開展,測定數據鏈中斷,不能真實反映種豬的 性能水平,那么此次測定工作毫無意義。對育種場內的種豬性能測定設備進行實時 監控,可及時發現測定設備異常,并通過故障診斷提高設備維護效率,避免影響種 豬測定工作的開展,確保種豬測定工作的正常開展。結合非洲豬瘟疫情防控對種豬 性能測定站遠程實時監控的需求,對系統的監控功能提出以下要求:
(1)自動識別育種場內測定站,將新增設備自動存入數據庫,并在系統頁面進 行更新;
( 2)實時采集各測定站運行狀態數據,包括工作狀態和工作模式,當測定站狀 態發生改變時,自動在系統頁面進行實時更新;
(3)故障診斷,對各測定站的故障進行識別,能夠在信息系統頁面及時進行警 示,提示用戶進行處理;
(4)頁面控制測定站,在信息系統頁面控制各測定站的工作狀態和模式可減少 人員進入豬場頻率;
(5)局域網和廣域網版本,有的豬場建場較早,地理位置較偏其網絡條件較差, 無法提供聯網服務,因此信息系統需要提供兩種版本,支持在局域網和廣域網下運 行。
2.5采食性狀分析模塊需求分析
2.5.1采食性狀分析
豬只采食行為與其生長性能性狀存在一定聯系,不少學者已佐證了這一觀點 (Piles et al 2020)。自動性能測定設備準確地記錄了豬只的采食和體重信息,為研 究豬采食行為和生長規律提供了有力的物質基礎。在實際育種工作中,分析豬群采 食行為與生長性狀間規律,通過對采食性狀進行選擇達到提高生長性能的目的,開 展間接育種,對于降低育種成本具有顯著意義。并根據豬群采食規律開展精準飼喂, 減少飼料浪費,提高養豬業生產效率(Erp RJJ Van et al 2020, Jensen et al 2020, Quemeneur et al 2020)。常見的豬群采食性狀分析包括:
(1) 采食行為晝夜節律分析。對不同體重水平豬群的 24h 采食次數進行頻率統 計,從而探索不同生長發育階段的豬群的晝夜節律和采食行為差異。
(2) 單次采食量分布。豬只的單次采食量反映了其采食規律,也是種豬性能測 定異常數據監測中的一個重要項目,因此對豬群的單次采食量進行頻率統計,可探 索不同豬群、生長發育階段的采食性狀差異,也可為測定數據異常數據監測提供統 計功能。
(3) 采食性狀間相關性分析。豬群的采食性狀間存在一定的相互關系,通過分 析其采食性狀間相關關系,根據分析結果合理改變豬群的采食規律,進而提高采食 量。
(4) 采食性狀與生長性間相關性分析。研究表明,豬群的采食行為影響其生長 性能性狀,而生長性能性狀測定繁瑣且周期長,因此根據生長性狀與采食性狀間相 關性分析結果,使用容易獲取的采食性狀替代生長性狀測定,開展間接選育,提高 育種效率和生產效率。
(5) 個體采食行為差異。不同品種、個體豬只的采食行為間也具有顯著差異, 對豬只個體每天的采食次數、采食量進行統計,不僅可用于探索相同條件下豬只的 個體差異,還可作為豬只體況異常的判斷依據。
(6) 飼料消耗統計。在測定過程中,存在育種人員統計育種場內每周或每天的 飼料消耗的需求,因此根據育種場內每頭種豬每天的采食量可統計育種場內每天和 每周的飼料消耗總量,減少人工統計工作量。
2.5.2種豬生長速度預測
種豬生長速度的快慢直接決定養殖成本的高低,種豬育種目標性狀中AGE100和 ADG 均是衡量種豬生長速度快慢的兩個重要指標。 AGE100 反映豬從出生到到達到 100 kg體重所需的天數,ADG則是測定期間種豬平均每天的體重變化量,均具有中 度遺傳力。動物體重隨日齡呈“S”變化趨勢(熊本海等2017),因此無法使用ADG 評價日齡和體重相差較大的種豬生長速度。AGEioo表示種豬體重到達100 kg所需的 日齡,可用于對比任意生長階段種豬間的生長速度,AGEioo越短表示種豬的生長速 度越快。AGEioo的傳統測量方法為種豬測定結束后使用籠稱等稱量其體重,根據日 齡和測量體重進行校正計算,無法提前淘汰生長速度緩慢種豬(種豬性能測定周期 一般為 2~3 月),并且稱量體重時易對種豬造成應激。
已有研究結果表明,種豬采食性狀與其生長速度存在一定的相關關系,因此使 用測定前期的數據對種豬達100 kg體重日齡進行預測,有助于縮短測定周期,提前 獲知種豬的生長速度,及時淘汰生長較慢的種豬。
2.6 章小結
本章首先闡述了本文的設計目標和業務工作流程,并從本文的設計目標出發, 分別從用戶、測定設備實時監控、種豬性能測定和采食性狀分析等 4 個方面對系統 功能進行了詳細的需求分析,為后續的系統功能設計和實現打下夯實的基礎,提高 開發效率。
3種豬采食性狀與生長性狀關聯分析
3.1數據來源
選取農業農村部種豬質量監督檢驗中心(武漢)采用法國ACEMA種豬性能測 定系統所測定的開始日齡為84±12天、開始體重為33±11 kg、結束日齡為159土 13天和結束體重為97±16 kg的101頭杜洛克種豬個體測定數據。種豬正式在進行 測定前和測定結束后空腹12小時,使用籠稱稱量測定種豬體重。測定期間受測種豬 營養水平與飼養環境一致,種豬性能測定設備自動記錄種豬每次的采食量和采食時 間。種豬生長性能測定性狀包括達目標體重日齡(d)、測定期日增重(Average Daily Gain,ADG)、目標體重背膘厚(Back Fat,BF)和飼料轉化率(Feed Conversion Ration, FCR)。其中達目標體重和日增重反映了豬只的生長速度,背膘厚反映豬只的瘦肉率, FCR則反映了豬只的飼料利用效率。利用EXCEL2019對101頭杜洛克種豬采食數 據進行整理,根據《種豬生產性能測定規程》(NY/T 822-2019)計算各種豬的FCR、 校正達30 kg體重日齡(AGE30)、AGE100和BF并進行校正,生長性能測定性狀數 據描述如表 3-1 所示。
表 3-1 種豬生長性能性狀統計
Table3-1 Breeding pig growth performance traits statistics
指標 Index 最大值Max 最小值Min 平均值±標準差 Mean±SD
ADG/(g/d) 963.5 706.7 866.9±70.7
BF/mm 13.9 7.4 9.8±1.6
AGE100/d 180.8 144.4 161.4±8.3
FCR/(kg/kg) 2.41 1.94 2.13±0.11
AGE30/d 99.3 64.4 79.8±7.2
3.2 種豬采食性狀與生長性狀相關性分析
計算每頭種豬測定期間每天的采食次數(Average Daily Number of Visit to Feeder, ANVD)> 日采食量(Average Daily Feed Intake,ADFI)、日采食時長(Average Daily Occupation Time,AOTD)、采食速率(Average Daily Feeding Rate,ADFR)、單次采 食量(Average Feed Intake Per Visit Across Testing Period, AFIV),利用 SPSS 22.0 對 ADG、BF、AGE100和FCR等4個生長性能測定性狀與5個采食性狀進行相關性分 析,并使用 Pearson 雙側檢驗法檢驗其顯著性,分析結果如表 3-2 所示。
表 3-2 生長性狀與采食性狀相關性
Table3-2 Correlations between growth performance traits and feeding traits
Trait ADG BF AGE100 FCR ADFI ANVD AOTD AFIV ADFR
ADG 1
0.584**
BF 1
(0.00)
-0.546** -0.212*
AGE100 1
(0.00) (0.03)
-0.107 0.134 -0.014
FCR 1
(0.28) (0.18) (0.88)
0.762** 0.417** -0.656** 0.459**
ADFI 1
(0.00) (0.00) (0.00) (0.00)
0.135 0.068 0.007 0.021 0.049
ANVD 1
(0.17) (0.49) (0.94) (0.83) (0.62)
0.195 -0.027 -0.084 -0.003 0.119 -0.017
AOTD 1
(0.05) (0.79) (0.05) (0.97) (0.23) (0.86)
0.265** 0.14 -0.321** 0.162 0.430** -0.849** 0.081
AFIV 1
(0.00) (0.16) (0.001) (0.10) (0.00) 0.00) (0.42)
0.230* 0.240* -0.290** 0.294** 0.468** 0.02 -0.792** 0.19
ADFR 1
(0.02) (0.01) (0.00) (0.00) (0.00) (0.84) (0.00) (0.06)
注.**.在0.01水平(雙尾),相關性顯著;*.在0.05水平(雙尾),相關性顯著。Note: * indicates significant correlation at the 0.05 level (two-tailed); ** indicates significant correlation at the 0.01 level (two-tailed).
由表 3-2 可見:(1)生長性狀間表型相關性。 ADG 與 BF 呈現極顯著正相關 (P<0.01)、與AGE100具有極顯著負相關性(P <0.01); BF與AGE100具有顯著負 相關性(P <0.05);而FCR與其他生長性狀均未達到顯著水平。
(2)采食性狀與生長性狀表型相關性。ADFI與4個生長性能性狀皆具有極顯 著相關關系(P <0.01); AFIV與ADG呈現極顯著正相關(P <0.01)、與AGE100呈 現極顯著負相關(P <0.01); ADFR與ADG呈現顯著正相關(P <0.05)、與AGE100 呈現極顯著負相關(P <0.01)、與FCR呈現極顯著正相關(P <0.01);而ANVD和 AOTD與4個生長性狀不存在顯著相關性。
(3)采食性狀間相關性-ADFI與AFIV和ADFR存在極顯著正相關(P <0.01); ANVD與AFIV存在極顯著負相關(P <0.01)。相關性結果表明日采食量高的種豬其 單次采食量和采食速率也相對較高,與每天的采食時長和采食次數無明顯相關關系, 但采食時長和采食次數卻顯著影響單次采食量和采食速率。
雖然此次分析沒有表明采食時間與生長性狀間具有顯著相關性,但研究表明當 豬只的采食時間過長會壓縮同伴的采食時間(Ragab et al 2019),因此對種豬采食時 間進行研究有助于挑選出具有良好采食習慣的種豬。我們的分析表明日采食量、單 次采食量和采食速率高的種豬生長性能更佳,這與豬只社會等級分析的結論類似, 在同一飼喂環境中社會等級高的個體采食時不易被其他個體所取代因此單次采食量 更高,而社會等級較低的個體只能增加采食次數從而滿足身體所需的能量。
3.3 種豬達100 kg 體重日齡預測建模
由 3.2 節種豬生長性能與采食性狀間的相關性分析可知,種豬生長速度與其采 食性狀呈現顯著相關關系,因此可以使用其采食行為來對種豬AGE100進行預測,如 He 等發現在生豬體重預測模型中加入采食行為特征時將有效提高模型的準確率和 降低模型預測誤差(He et al 2021)。
3.3.1特征選取
根據AGE100與采食行為性狀間的Pearson相關性,選擇具有顯著相關性的日采 食量、單次采食量和采食速率作為AGE100預測的采食行為特征,選擇種豬開始測定 時的日齡、體重以及達30 kg體重日齡作為種豬生長和體重特征,結合種豬開始測 定后一個月的采食行為性狀特征對其 AGE100 進行預測。
3.3.2建模方法
采食性狀間存在一定的自相關性,偏最小二乘回歸( Partial least square method, PLS),是一種集主成分分析和典型相關分析為一體的多元線性回歸方法,可以有效 解決小樣本數據量自變量之間的多重相關性(Macciotta et al 2006,張智韜等2018, 曹引等 2018, Murase K and Kato K 2018)。對于 m 個自變量 X1, X2,…,Xm和 n 個 因變量 y1,y2,…,yn 的建模流程如下(Zhang Y and Zhang L 2014, Wang C et al 2015):
(1)數據標準化。將自變量矩陣和因變量矩陣進行數據中心化處理,即每個樣 本減去其維度的均值后再除以該維度的標準差;
(2)提取主成分。分別在自變量和因變量中提取第一對主成分m1和m,根據 主成分原理,要求 m1 和 n1 要盡可能解釋 X、 y 信息,即 m1 和 n1 的方差值最大,并 且相關度最大;
(3)建立第一主成分與原自變量和因變量間的回歸。對于所提取的第一主成分 m1與因變量y1,y2,…,yn以及n1與自變量X1,X2,…,Xn建立回歸方程;
(4)繼續提取主成分,直到滿足要求。對自變量和因變量繼續提取r對主成分, 按步驟(3)建立主成分與原變量間的回歸方程,直到達到所設置的迭代條件為止。
3.3.3模型評價指標
選擇決定系數 R2 ( Coefficient of determination,R2 )和平均絕對誤差 MAE (Mean absolute error,MAE)作為此次達目標體重日齡預測模型的評價指標,R2反映預測 值與實測值之間的擬合程度,計算公式如式(3-1); MAE體現模型的估算誤差,計 算公式如式(3-2)。R2越大、MAE越小表明模型的預測精度越高。
n
工(y,- / (兀))2
R 2 = 1 -旦 (3-1)
n _
E(y, - y)2
i =1
1n
MAE = — -/(兀)| (3-2)
n , =1
式(3-1)、(3-2)中,"一樣本量;f(兀)一種豬達100 kg體重日齡預測值;y—種 豬達100 kg體重日齡真實值;y —種豬達100 kg體重日齡真實值的均值。
3.3.4種豬達100 kg體重日齡預測模型
本文數據集的自變量為種豬開測后一個月內的采食性狀和相關的生長性狀,采 食性狀包括AFIV、ADFR和ADFI,生長性狀包括AGE30和正式開始測定時的體重 和日齡;因變量為AGE100,即6自變量和1個因變量進行PLS建模。
利用python的sklearn庫中“kFold”將數據集隨機劃分5折,循環使用其中4 折80條數據用于建模,1折21條數據用于驗證模型。使用網格搜索法GirdSearchCV() 確定 PLS 模型的最佳主成分“ n_components ”,搜索原則為訓練集和測試集的準確率 最高,并且測試集的準確率的不高于訓練集的準確率時所對應的成分個數,由此確 定PLS模型的“n_components” =3。使用交叉驗證對PLS模型進行訓練和驗證,5 折交叉驗證結果如表3-4所示,其中訓練集平均R2為0.70,平均MAE為3.4d;測 試集平均R2為0.68,平均MAE為3.2d。
表 3-4 5 折交叉驗證結果
Table3-4 5-fold cross-validation results
訓練集R2 訓練集MAE 測試集 R2 測試集MAE
1 0.70 3.4 0.68 3.3
2 0.71 3.4 0.65 3.2
3 0.70 3.5 0.69 3.2
4 0.69 3.3 0.71 3.2
5 0.71 3.2 0.69 3.2
選取交叉驗證中訓練集R2為0.71,MAE為3.2d,測試集R2為0.69,MAE為
3.2d為PLS模型的最優解,回歸方程標準化系數如公式(3-3)所示。
AGE100 = 4.48 * 4 — 0.27 *B — 0.98 * C — 2.93 *D — 3.69 * E — 1.56 *F (3-3) 式(3-3)中,開始測定日齡;采食速率;C—單次采食量;D—日采食量; E一開始測定時體重;F一達30 kg體重時日齡。
育種是根據測定種豬的生長性能進行排序,選出其中具有優秀品質的種豬。利 用SPSS 22.0計算測試集實測值與PLS模型預測值之間Spearman秩相關系數,其相 關性為0.796 (P<0.01),表明模型預測的種豬生長速度排序與種豬實測生長速度排 序的相關性較高。通過交叉驗證和秩相關性證明結合種豬生長、體重與采食行為特 征能夠對達100 kg體重日齡進行提前預測以及種豬育種選育。
3.4 本章小結
本章根據農業農村部種豬質量監督檢驗中心(武漢) 101 頭杜洛克種豬測定數 據,分析了 AFIV、ADFR、AOTD、ANVD 和 ADFI 等 5 個采食性狀與 ADG、AGE100、 BF、FCR等4個生長性狀間相關性;并基于采食性狀與生長速度性狀的顯著相關性, 選取測定一個月內有顯著影響的采食性狀,結合早期生長性狀構建了種豬達100 kg 體重日齡預測 PLS 預測模型,為信息系統的采食性狀分析模塊奠定邏輯基礎。
4信息管理系統設計
4.1種豬性能測定系統總體結構
本研究在課題組自我研制的種豬性能測定站上開展,是一個典型的物聯網系統 (李瑾等 2015, 劉成良等 2020, Chen T et al 2021),測定設備作為物聯網系統的感 知層,獲取種豬相關信息,而通訊模塊則是物聯網系統的傳輸層,負責將測定站獲 取的數據發送至信息系統,信息系統即物聯網的應用層(曹守啟等 2021)。
圖 4-1 種豬性能測定系統總體結構
Fig.4-1 Overall structure of breeding pig performance measurement system
測定系統整體結構如圖4-1所示。測定站上安裝了 RFID射頻模塊(Zhu W et al 2010, Maselyne J et al 2016, 王楚豫等 2022)、體重和料重稱量模塊以及通訊模 塊等其中體稱動態稱量精度小于0.1%, RFID 射頻模塊讀取種豬電子耳標進而識別 種豬身份,體重和料重稱量模塊對種豬的體重和采食量進行稱量,而通訊模塊則完 成測定站與信息管理系統之間的雙向數據傳輸。本系統的設計思路是育種場內的測 定站將種豬采食完成后的測定信息和定時將自身的運行狀態信息通過CAN總線發 送至信息管理系統,信息管理系統對接收到的數據進行解析后,根據數據類型的不 同進行相應的處理,如狀態解析、測定數據統計等,然后將數據存入數據庫,信息 系統頁面則為用戶提供數據查詢、性能指標計算和測定站狀態監控平臺,并通過
CAN 總線將用戶控制命令發送至測定站,對各測定站進行精確控制,完成用戶交 互。
4.2信息管理系統開發架構
信息系統采用基于前后端分離的B/S (Browser/Server)和RESTful開發架構進 行設計,用戶無需安裝客戶端,使用瀏覽器即可訪問信息系統( Shen J et al 2010, Mu Z 2014, Wang J et al 2014, 林蘭芬等 2015, 魏圓圓等 2018, 汪鳳珠等 2019, Shijun Z 2020)。信息系統后端選用python的輕量級web框架Flask,前端頁面選用Reactjs 技術棧,組件庫選用Ant Design,圖表庫選用Bizcharts,數據庫選用MySQL屬性數 據庫(Matallah et al 2021)。使用模型(Model)、視圖(View)、控制器(Controller) 設計模式組織程序代碼,將系統業務邏輯、用戶交互界面和數據分離,如圖 4-2 所 示,每層職責分明,具有“高內聚、低耦合”的特點,從而使系統更容易維護和升 級(何淼等 2020, 張翠翠等 2020, Solapurkar P 2016)。選用輕量級 web 框架,避 免搭建復雜的web服務器,實現了快速響應業務,技術門檻相對較低;采用web2.0 思想,使得用戶界面友好、美觀,采用響應式布局,能夠適配在PC端和PDA等瀏 覽器,具有較好的兼容性(余力等2017);采用REST API接口設計,快速發布數 據接口,提高系統的移植性和便于后期二次開發。
Fig.4-2 Information Management System Development Architecture
(1) 視圖層:用戶所看到的界面,完成與用戶的交互。基于React技術棧,使 用HTML5、CSS3、JavaScript作為基礎語言,Umijs作為打包框架,Antd作為UI框 架,Antv作為圖表框架,Dva控制數據流。
(2) 控制器:系統開發的關鍵部分,處理系統的數據邏輯處理關系,如數據校 驗、頻率統計等,具有承上啟下作用。接收View發送的http請求,根據url執行相 關 api 函數,經邏輯判斷后,調用數據處理方法,并將處理結果反饋至視圖層,完成 用戶交互。除處理用戶請求外,還將接收測定站發送的數據并進行相關解析、校驗 和統計。
(3)模型層:操作MySQL數據庫完成數據的增刪改查。借助flask_sqlalchemy 數據庫框架,采用定義python類來表示數據表,完成ORM對象關系映射,對類函 數進行操作代替寫SQL語言。
4.3功能模塊設計
根據第二章對系統功能設計的需求分析,對本文的功能模塊進行劃分,包括用 戶模塊、測定站實時監控模塊、種豬生長性能測定模塊和采食性狀分析模塊,如圖 4-3 所示。用戶模塊包括用戶的注冊、登錄和退出;測定站實時監控模塊對豬場內的 測定站運行狀態進行實時監控、故障診斷,并將系統中發生事件存儲進系統日志; 種豬生長性能測定模塊涵蓋種豬測定信息采集的全過程,包括未知種豬識別、種豬 身份信息采集(入欄)、基礎數據查詢(體重、采食等信息)、生產性能指標計算(日 增重和FCR)、體重變化趨勢圖以及結束測定(出欄);采食性狀分析模塊根據種豬 的基礎采食信息統計其采食行為特征,并進行圖表化分析,如采食量時段統計、個 體采食量變化趨勢圖、采食總量統計、采食量區間統計圖、異常個體識別和達100 kg 體重日齡預測等。
圖 4-3 信息管理系統功能模塊劃分
Fig.4-3 Information management system functional module division
(1)用戶模塊采用雙用戶權限進行設計,不同等級用戶登錄系統后具有不同的 系統操作權限,只有登錄成功后才能使用信息管理系統,新用戶注冊后其權限只能 為普通用戶,當不再使用系統后,點擊退出即可;
(2)測定站實時監控,對育種場內各測定站的運行狀態和模式進行實時監控, 當出現故障時直接在系統頁面顯示具體故障原因,并對測定站狀態變化事件和出欄 事件進行記錄,便于后期數據追溯;
(3)種豬生長性能測定模塊采集種豬身份,并對輸入信息進行嚴格檢查,確保 數據符合規范,然后根據種豬身份進行建立個體測定記錄,實時對測定數據進行采 集、存儲,用戶可在系統頁面進行查詢,并對查詢條件進行細化,如“所有豬”、“測 定站”和“某一頭豬”,以及查詢的起止日期,可精確至某天某時某分,根據測定數 據進而計算個體生長性能指標日增重和飼料轉化率,并根據體重變化繪制生長變化 曲線,可選擇只查看某一頭豬、或整個測定站內豬進行對比;
(4 )采食性狀分析模塊根據種豬的采食記錄實時對每天的ANVD、ADFI、AOTD 進行統計,并計算每天的采食變化量和采食變化百分比,根據每天的采食總量繪制 任意時間階段的個體采食量變化、周采食量統計等,根據每次的采食時間和采食量 統計種豬的采食時段頻率統計和單次采食量頻率統計,根據體重和采食變化百分比 對異常個體進行預警。此外,對統計的采食性狀和生長性狀進行關聯分析,并對 AGE100 進行提前預測。
4.4 數據遠程通信設計
CAN (Controller Area Network)總線又稱為控制器局域網絡,是目前使用范圍 最廣的幾種現場總線之一,因其實時性強、穩定性高、擴展方便等特點被廣泛使用 于農業機械數據傳輸。根據仲裁段ID碼長度不同將CAN報文分為標準幀和擴展幀 格式,以報文為單位進行數據傳輸(張真等 2018, 丁友強等 2019, 蔣建東等 2019, Fugiglando U et al 2019, 羅熠 2020)。本文傳輸的數據包括“從下至上”的測定站 定時發送的運行狀態數據、不定時的種豬采食測定數據和用戶操作測定站向信息系 統發起的時間同步請求;以及“從上至下”的接收到測定站運行狀態數據的反饋數 據、種豬采食測定數據接收的反饋數據和時間同步請求的反饋數據。
CAN總線以報文的形式進行數據的傳輸,具有數據幀、遠程幀、錯誤幀、過載 幀和幀間隔5種類型,其中數據幀和遠程幀根據標識符的長度分為標準(11位)和 擴展(29位)兩種格式(Li J et al 2020, Ma Y 2021)。本文采用數據幀和遠程幀進 行數據的雙向傳輸,為方便系統擴展,基于CAN2.0B協議的拓展幀格式,參考ISO 11783/SAE J1939 標準,制定本文的通信協議(Wu J et al 2009, HU D et al 2019)。
4.4.1網絡通信協議
信息管理系統與測定站之間要進行網絡通信,就必須基于相同的方法, TCP/IP 協議傳輸層中使用源IP、源端口、目的IP、目的端口以及傳輸協議來標識兩個節點 之間的通信,TCP/IP協議傳輸層常用的傳輸協議有TCP和UDP兩種協議。TCP協 議要求通信雙方應先建立穩定連接后才能進行數據傳輸,數據成功傳輸成功后斷開 連接,否則將再次發送數據,因此可靠性較高,但對系統通信資源消耗較大,實時 性較差;而UDP協議只負責數據的發送,不在乎數據是否傳輸成功,因此實時性高, 系統通信資源消耗少,但可靠性差(Liu X et al 2016, Liu K,陳韜羽2019)。
本文傳輸的數據包括測定站運行狀態數據和測定數據,其中測定站運行狀態數 據則是每10秒傳輸一次,一臺測定站內大概12~15頭種豬,因此每天一臺測定站大
概產生200條測定數據。當育種場內測定站數量和種豬數量增加時,采用TCP協議 進行數據傳輸容易造成通信阻塞,因此采用 UDP 協議進行數據傳輸。但由于 UDP 協議可靠性差,無法確保數據的成功到達,測定數據丟失將造成測定工作失敗,無 法信任所采集數據計算的性能指標表型值。因此在測定數據發送時加入“確認”機 制和“重傳”機制,即當測定數據發送失敗或未完整發送時,下位機再次發送該條 測定數據,直至成功采集存儲至數據庫中。UDP協議面向無連接,無法獲知當前的 網絡通信狀態(Suherman S et al 2020),此時網絡通信狀態分為兩個部分,一方面 是從下到上的網絡通信狀態(下位機發送數據到服務器),另一方面是從上到下的網 絡通信狀態(服務器發送數據到下位機)。因此使用下位機發送的運行狀態數據和服 務器接收到測定站運行狀態數據后的反饋作為雙向網絡通信狀態的標志。
4.4.2功能請求劃分
根據種豬測定工作的實際需求,將測定站的功能請求劃分為 8 個部分:心跳、 數據發送請求、數據接收完成、同步時間請求、開機命令、關機命令、測定模式命 令、訓練模式命令,不同功能請求與報文定義如表 4-1 所示。
表 4-1 功能碼定義對照表
Tabel4-1 Functional Code Definition Reference Table
功能碼 功能請求定義
0000 心跳
0001 數據發送請求
0010 同步時間請求
0011 開機請求
0100 關機請求
0101 數據接收完成標志
0110 訓練模式
0111 測定模式
采用 29 位擴展格式的遠程幀傳輸測定站和信息管理系統之間的功能請求,將遠 程幀的標識符分為保留段、運行模式段、運行狀態段、功能請求段和測定站號段, 用于確定不同測定站的不同功能請求,遠程幀標識符段定義如表4-2所示。
表 4-2 遠程幀標識符段定義
Table4-2 Remote Frame Identifier Field Definition
標識符 ID28-ID16 ID15 ID14-ID11 ID10-ID7 ID6-ID0
說明 保留段 運行模式段 運行狀態段 功能請求段 測定站號段
4.4.3運行狀態數據傳輸協議
各測定站定時通過 CAN 總線向信息管理系統發送心跳遠程幀,信息管理系統
服務器端對心跳包進行解析。首先判斷接收到的此條數據類型,若為遠程幀則獲取
其功能碼,若功能碼為“0000”,表明此條數據為測定站的運行狀態數據。然后解析 標識符的 0到6位獲取測定站號、解析 10到13 位獲取該測定站的狀態碼,解析 14 位獲取該測定站的當前運行模式。
通過解析標識符中 10 到13 位可以獲取該測定站的運行狀態碼,通過預先定義 的狀態碼與運行狀態,即可獲取測定站的運行狀態。
4.4.4測定數據傳輸協議
遠程幀不具有數據段不能攜帶測定數據,采用擴展幀格式的數據幀傳輸測定數 據。一條完整的種豬測定數據包括:耳標號、測定站號、采食量、采食開始時間、 采食結束時間、體重,數據長度大于8 個字節,必須將測定數據進行分幀封裝發送, 測定數據傳輸協議如圖 4-4 所示。
圖 4-4 種豬測定數據傳輸流程圖
Fig.4-4 Flow chart of data transmission for breeding pigs
因為采用打包發送測定數據,一個數據包中有多條數據幀,那么同時接收多臺 測定站的測定數據,容易導致數據幀順序錯亂,出現“亂幀”現象。因此測定數據 發送遵循“詢問”機制、“幀數和校驗”機制和“重發”機制。測定數據發送前首先 發送功能碼為“001”的數據發送請求遠程幀用于詢問服務器當前是否空閑(是否正 在接收其他測定站的測定數據)。
若當前服務器空閑,則將該遠程幀原格式返回,表明當前可以接收測定數據, 測定站接收到反饋后,開始發送測定信息數據幀,服務器后端對接收到的數據幀進 行幀計數。JSON格式的測定數據傳輸時被拆分為字節數組,使用“utf-8”將數據幀 解碼為字符串,再用“json.load”將字符串解碼為字典。非末幀功能碼不為0,數據 段攜帶測定數據;末幀功能碼為 0,數據段只攜帶此次共發送數據包數據幀的幀數 總和。接收完成后,進行“幀數和”校驗,并將測定數據存入MySQL數據庫,并向 測定站發送接收完成標志,代表此次測定數據成功采集并存儲。
若此時服務器正在接收其他測定站的測定數據,則將該條請求放入數據等待接 收隊列,并開啟定時任務開始對等待時間進行計時,若在系統設定的定時期限內, 服務器處理該條數據,那么表明服務器可以開始接收此次測定數據。若在系統設置 的定時期限內未對此條功能請求進行處理,那么服務器不再處理此次請求,不反饋 任何標志。而測定站未接收到反饋,則會在下次種豬采食時再次請求發送該條測定 數據。
通過以上協議,即使是在網絡故障情況下,在網絡通信恢復后,測定站將再次 發送未發送成功的測定數據,確保了每條測定數據的成功接收和存儲,為系統的統 計分析功能提供精確的數據源。
4.4.5同步時間請求
測定站使用串口屏自帶的RTC (Real Time Clock)對時間進行計時,可能存在 與實際時間有一定出入,導致種豬采食時間記錄不準確,因此需要對測定設備的RTC 進行校準。此請求由測定人員在測定設備的顯示屏終端發起,當服務器接收到時間 同步請求遠程幀后,使用python中time模塊中localtime()函數獲取當前服務器當前 時間,并將時間按 2 位數年+月+日+時+分+秒+0+和校驗共 8 個字節返回對對應設 備,完成與測定站之間時間校準。
4.5數據庫設計
數據庫設計種豬性能測定信息管理系統的核心和關鍵環節,一個設計合理的數 據結構可以有效的提高數據增刪改查的效率,也是后期數據挖掘分析的重要來源。 信息系統的數據庫中數據表根據數據類型,大致分為用戶、測定站和種豬3個類別, 共7張數據表。各個類別數據表之間并不獨立存在,存在一定關聯關系,系統實體- 聯系(entity-relationship, E-R)圖如圖4-5所示,該圖表明了本文數據表以及屬性之 間的關聯關系。
圖 4-5 數據庫 E-R 圖
Fig.4-5 Database E-R Diagram
4.5.1用戶信息數據表結構設計
(1)用戶身份信息表 種豬性能測定信息管理系統的用戶身份信息表對用戶的相關信息進行存儲,如
表4-3所示。其中用戶密碼為哈希加密后的64位hash值,不使用明文存儲。
表 4-3 用戶身份信息表
Table4-3 User identification information form
字段名 數據類型 字段描述 是否允許為空
id int 主鍵 否
username varchar 用戶名 否
password char 用戶 hash 密碼 否
token char hash 字符串 否
phone char 手機號 否
email varchar 郵箱 否
rank enum(‘super',‘common') 用戶等級 否
created_time int 注冊時間 否
last login time int 最近登錄時間 否
(2)用戶設置表 種豬性能測定信息管理系統的用戶設置表存儲高級管理員對信息管理系統的相 關設置,如豬場代碼、普通用戶可查詢的數據列等,數據表結構如表4-4所示。
表 4-4 用戶設置表 Table4-4 User settings form
字段名 數據類型 字段描述 是否允許為空
id int 主鍵 否
name varchar 系統配置名 否
value varchar 配置值 否
created time int 配置創建時間 否
4.5.2測定站信息表結構設計
( 1)測定站運行狀態表 種豬性能測定信息管理系統的測定站運行狀態表,用于存儲各測定站當前的運 行狀態和運行模式,使用狀態碼標識具體故障,如表4-5所示。
表 4-5 測定站運行狀態表
Table4-5 Measurement station operation status form
字段名 數據類型 字段描述 是否允許為空
id int 主鍵 否
stationid char 測定站號 否
status enum(‘on', ‘off') 運行狀態 否
mode enum(‘test', ‘train') 運行模式 否
errorcode char 狀態碼 否
changetime int 狀態改變時間 否
( 2)狀態碼對照表
種豬性能測定信息管理系統的狀態碼對照表用于存儲測定站運行狀態碼與故障
說明,將故障原因進行細分,如表4-6所示。
表 4-6 狀態碼對照表
Table4-6 Measurement station operation status form
字段名 數據類型 字段描述 是否允許為空
id int 主鍵 否
errorcode int 狀態碼 否
comment varchar 狀態描述 否
4.5.3種豬信息數據表結構設計
( 1)種豬身份信息表
種豬性能測定信息管理系統的種豬身份信息表用于存儲每個種豬的身份信息,
包括已出欄和當前正在測定的種豬信息,如表4-7所示。
表 4-7 種豬身份信息表
Table4-7 Breeding pig identity information form
字段名 數據類型 字段描述 是否允許為空
id int 主鍵 否
pid char 種豬號 否
earid char 電子耳標號 否
stationid char 測定站號 否
birthtime date 出生日期 否
entry_time date 入欄日期 否
exit_time date 出欄日期 是(默認為NULL)
( 2)種豬基礎測定數據表
種豬性能測定信息管理系統的種豬基礎數據表用于存儲種豬的每次測定的基礎
數據,并在測定數據基礎上加入系統接收該條測定數據時間,如表4-8所示。
表 4-8 種豬基礎測定數據表
Table4-8 Breeding pig base measurement data form
字段名 數據類型 字段描述 是否允許為空
id int 主鍵 否
pid char 種豬號 否
food_intake float(5,1) 采食量 否
weight float(5,1) 體重 否
start_time int 采食開始時間 否
end_time int 采食結束時間 否
sys time int 系統接收時間 否
(3)種豬一日測定記錄統計表 種豬性能測定信息管理系統的種豬一日測定記錄統計表用于存儲每頭種豬每天
的測定記錄,如表4-9所示,此記錄根據每天的基礎測定數據實時更新。
表 4-9 種豬一日測定記錄統計表
Table4-9 One-day measurement record statistics of breeding pigs form
字段名 數據類型 字段描述 是否為空
id int 主鍵 否
pid char 種豬號 否
record_date date 日期 否
food_intake_count smillint 日采食次數 否
food_intake_total float(6,2) 日采食量 否
weight_ave float(6,2) 體重均值 否
pre_weight_compare float(6,2) 體重變化量 否
pre_weight_precent float(6,2) 體重變化百分比 否
pre_foodintake_compare float(6,2) 采食量變化量 否
pre foodintak precent float(6,2) 采食量變化百分比 否
4.6 本章小結
本章主要對種豬性能測定系統的整體結構進行介紹,介紹了信息管理系統的工 作原理,接著闡述了系統的開發架構和所選用的關鍵技術,然后根據需求分析,將 系統功能進行模塊化介紹,并對每個模塊所包含的功能作了進一步的說明。采用 CAN總線進行數據的雙向傳輸,首先介紹了 CAN總線數據傳輸的特點,然后從傳 輸的數據類型詳細闡述了數據的傳輸協議,最后分別從用戶信息、種豬信息和測定 站信息3 個類別對設計的數據表進行介紹。
5信息管理系統功能實現
5.1信息管理系統初始化
服務器與下位機使用UDP協議連接,并通過socket類函數進行數據的收發。為 提高系統對數據的處理速度,初始化時同時開啟3個threading線程,同時完成數據 的接收、處理和發送,系統初始化流程圖如圖5-1所示。使用多線程流程為①引入 thread庫中的Thread類;②創建Thread實例,實例化時需要接收target,args(kwargs) 兩個參數,其中target代表多線程調用的對象,而agrs或kwargs則代表調用該線程 時所傳遞的參數;③啟動Thread實例。
(初始化)
用戶控制命令
開關機
測定、訓練模式
CAN接收線程 4-
CAN發送線程
CAN總線
連接成功
啟動接收、發送、處理三個線程
圖 5-1 信息管理系統初始化
Fig.5-1 Information management system initialization
除此之外,還將完成數據初始化工作,包括已入欄種豬、未知種豬、測定站列 表和種豬最近兩日測定統計信息。查詢數據庫中記錄,并將以上信息初始化至內存 中,當需要使用該信息時,無需重復查詢數據庫,直接使用內存中記錄即可。其中 已入欄種豬信息包括種豬測定站號、種豬耳標、種豬號;未入欄種豬信息包括種豬 測定站號、種豬耳標;測定站信息包括測定站號、當前運行模式、當前運行狀態; 種豬最近兩日測定統計信息即根據已入欄種豬的種豬號查詢其最近兩天的測定統計 信息,包括種豬號、采食總量、采食變化量、采食變化百分比、采食次數、體重均 值、體重變化量、體重變化百分比和日期,若系統重啟初始化時,該種豬未在系統 進行入欄,或僅在測定站內存在一天的測定記錄,則該信息可能為空或僅一條統計 記錄。
5.2 用戶模塊實現 用戶模塊主要涉及雙等級權限、注冊、登錄和退出,新用戶只有先進行注冊后 才能登錄進入系統,然后根據用戶等級賦予相應的系統使用權限,當使用完成后, 使用退出功能,退出系統。
5.2.1注冊 每次使用系統前,需要在系統的登錄頁面進行登錄,高級管理員無需注冊,由 系統直接提供,而普通新用戶則需要在系統首頁的登錄界面進入注冊界面,然后輸 入相應的信息后進行注冊,包括郵箱、手機號、用戶名、密碼和確認密碼,然后系 統根據所提交的信息進行校驗,注冊界面如圖 5-2所示。
圖 5-2 信息管理系統注冊頁面設計
Fig.5-2 Information management system registration page design
前端使用 antd 組件庫里面的 Button、Form、Input 和 Row 等組件,用于注冊時 數據的錄入。采用 Input 組件采集用戶輸入信息,使用 Form.Item 表單字段組件的 getFieldDecorator 中的 rules 驗證,在 rules 中定義校驗規則,主要包含 max、type、 pattern、message、required等校驗規則,max限制輸入內容的最大長度、type為內建 檢驗類型、 pattern 為正則表達式校驗、 message 為校驗失敗時的提示內容、 required 為是否為必填。type中具有對郵箱格式的校驗規則,因此直接設置rules的type:email, 即可完成對郵箱格式的校驗。而手機號、用戶名、密碼和確認密碼則需要額外定義 校驗規則,定義如下:
(1) 手機號需要滿足長度為 11 位,以 1 開頭,每一位都是數字,正則表達式 為:/人1[0-9]{10}$/,若校驗不通過提示“手機號格式不正確”
(2) 用戶名需要滿足最少1 位,最多30位的數字或字母,或數字與字母組合, 正則表達式為:/A[\w]{1,30}$/,若校驗不通過提示“用戶名不符合規范”
(3) 密碼需要滿足最少6位,最多30位的數字、字母或者數據與字母組合,
正則表達式為:”[\w]{6,30}$/,若校驗不通過則提示“密碼長度6到30位”
(4) 確認密碼滿足與密碼相等即可,因此對比密碼和確認密碼值,若不一致則 使用callback)回調函數提示“兩次密碼輸入不一致”
若以上格式校驗全部通過后,點擊“確定”按鈕將用戶信息提交至服務器后端, 后端對接收到的數據進一步進行檢查,手機號、郵箱和用戶名均不能重復使用,然 后對用戶的明文密碼進行加密處理,并生成一個時效性為30分鐘的token,賦予該 新注冊用戶等級為普通用戶,然后將加密后的用戶信息和 token 存入數據庫,并將 用戶名、token和用戶等級返回至前端。
其中用戶密碼加密采用python中hashlib模塊對用戶明文密碼進行hash加密, hashlib 模塊主要提供字符加密功能,將 sha 和 md5 模塊整合到一起,支持 md5、 sha1、 sha224、 sha256 等加密算法。 hash 加密將傳入的內容經過算法運算后得到一 串hash值,只要傳入的內容的一樣,那么加密后得到的hash值也一樣,在進行加密 前需要對內容進行encode(‘utf8')編碼,否則將報錯。本文選用hashlib.sha256()對用 戶密碼進行加密。
身份認證是信息安全的基礎。目前常用的認證技術有三類(FIPS PUB 190), 包括口令認證、令牌認證和生物認證(落紅衛 2021)。其中生物認證是自動使用生 物學或行為學特征決定或驗證個體身份的技術,本文不予考慮。
基于靜態口令的身份認證技術雖然因其簡單和低成本得到了廣泛的應用,但靜 態口令存在嚴重的安全問題,容易遭受字典攻擊、窮舉攻擊甚至暴力計算破解,導 致用戶被假冒;而令牌認證則具有隨機性、不可預測性等特點,完全由應用管理, 可以避免CSRF攻擊,并且是無狀態的,可以在多個服務間共享(王平2021)。因 此本文采用基于令牌認證對用戶身份進行驗證。
5.2.2.登錄
( 1 )用戶登錄 用戶在瀏覽器中打開系統,若沒有進行登錄都將被重定向至登錄界面。在系統 的登錄界面輸入相應的用戶名和密碼,在輸入過程中執行 validateFieldAndScroll 函 數,該函數對用戶輸入信息進行正則表達式檢查,若不符合規范則提示“用戶名不 符合規范”或“密碼長度為6到30位”,并且不向下執行,無法點擊“確定”。當用 戶輸入的信息符合規范,并且點擊“確定”按鈕后,將輸入的表單內容提交至服務 器后端,服務器后端確認用戶身份,登錄界面如圖 5-3 所示。
圖 5-3 信息管理系統登錄頁面設計
Fig.5-3 Information management system login page design
服務器后端接收到用戶提交的內容后,將用戶密碼進行hashlib.sha256()加密, 并獲取當前的時間和生成Json Web Token令牌。首先根據用戶名檢索數據庫中是否 存在該用戶名,若存在則返回該用戶的密碼、等級,對比用戶輸入的密碼與數據庫 中密碼是否相等,若相等,則將生成的 Token 和當前時間更新至數據庫中,然后將 用戶名、Token和用戶等級返回至前端,前端將Token后將其存儲在Local Storage中; 若用戶名不存在或密碼不相等,則返回錯誤信息“用戶名或密碼錯誤”至前端。登 錄流程如圖 5-4 所示。
前端 服務器
使用用戶名、密碼進行登錄 校驗
通過
將 T oken 存入 Localstorage 中 ■ 生成Token
■
V 未
登錄成功,進入系統主頁 通 過
提示“用戶名或密碼錯誤” 4 返回 error response V_1
圖 5-4 信息管理系統登錄流程圖
Fig.5-4 Information management system login flowchart (2)用戶每次請求訪問
登錄成功后,前端根據服務器所返回的用戶等級賦予相應的操作權限,高級管 理員員為“super"而普通用戶為“common”當用戶等級為“super"時在系統設置 頁面顯示數據列勾選項,若為“common”則不顯示該功能。此后用戶每次向服務器 請求資源都將從本地存儲中拿出Token—JS將Token放入request的Authorization 頭,發送http請求向后端請求數據一服務器接到前端請求(當前URL加了 loging_check,并且請求方法在methods參數中),進行校驗f從requestAuthorization 頭拿出Token進行校驗,若Token正確并在有效期內則將所需的信息返回。
服務器簽發的Token有效期僅30分鐘,在這30分鐘內,用戶即使關閉瀏覽器, 再次打開瀏覽器也無需進行登錄。但是如果在用戶正常操作的過程中,Token過期失 效要求重新登錄,將導致用戶體驗感糟糕。為了解決在操作過程中不讓用戶感到 Token失效的問題,采取RefreshToken。服務端無需刷新Token的過期時間,一旦 Token 過期,就反饋給前端,前端使用 RefreshToken 申請一個全新的 Token 繼續使 用,原理如圖5-5所示。這種方案中,服務端只需要在客戶端請求更新Token的時 候對 RefreshToken 的有效性進行一次檢查,大大減少了更新有效期的操作,也就避 免了頻繁的讀寫。
圖 5-5 RefreshToken 流程圖 Fig.5-5 RefreshToken flow chart
5.2.3退出
用戶使用結束后,將鼠標移動至系統的右上角用戶圖標上,然后彈出“退出登 錄”選項,點擊“退出登錄后”,前端提示“已成功退出登錄”并自動清除用戶 Token, 然后返回至系統的登錄界面,退出界面設計如圖 5-6所示。
5.3測定站實時監控模塊實現
5.3.1測定站運行狀態劃分
在監控系統中,劃分監控對象的工作狀態也是一項重要的工作,對后期系統開 發有著顯著影響(劉媛 2019, 羅熠 2020)。結合實際的育種工作,對測定設備運行 狀態進行劃分,其劃分流程圖如圖 5-7所示。
CAN 通 信 故 障
圖 5-7 測定站狀態劃分
Fig.5-7 Measurement station status division
根據系統與測定站之間的通信情況,將系統狀態分為在線狀態和通信故障狀態; 通信在線狀態中,測定站的運行狀態包括工作狀態和工作模式,其中工作狀態分為 開機、關機狀態,而工作模式分為測定模式和訓練模式;在開機狀態中,又將測定 站的狀態分為正常工作狀態和故障狀態。
5.3.2測定站狀態實時監測
各測定站定時向信息系統服務器發送攜帶運行狀態的心跳包,通過解析心跳包 即可獲得各測定站的運行狀態,但僅限于網絡狀態良好的情況下,因此除各測定站 上報的狀態外,還應增加“網絡通信故障”。
系統初始化時,新建 device_status 字典 dict 用于存儲各測定站的運行狀態,具 體格式為 device_status[str(node_id)] ={ "can_status": 0, "work_status": 0, "put_status": 0 ,“work_mode”:0, “put_mode”:0},每個鍵代表一個測定站,鍵對應的值為測定站的 狀態, can_status 代表 CAN 通信狀態、 work_status 代表最新運行狀態, put_status 代 表上次運行狀態, work_mode 代表最新運行模式, put_mode 代表上次運行模式。該 變量為global變量,兩個函數能夠改變其值。測定站狀態監測流程圖如圖5-8所示。
圖 5-8 測定站監控流程圖
Fig.5-8 Measuring station monitoring flow chart
(1)當接收到測定站心跳包時,執行network_management()函數,該函數首先 判斷該測定站是否為新增測定站(device_status中是否存在測定站號的鍵),若不存 在,則增加以測定站為鍵的鍵值對, device_status[str(node_id)] ={ "can_status": 2, "work_status": new_status, "put_status": 0 ,“work_mode”:new_mode, “put_mode”: 0 }, 其中最新的運行狀態和模式都由該心跳包解析所得。然后將此記錄新增至數據庫中; 若存在,則判斷 work_status 的值與 put_status 的值是否相等,若不等,則表明運行 狀態發生了改變,那么將更新數據庫中記錄,并將work_status的值賦予put_status, 運行模式更改與運行狀態改變相同。
(2)定時任務執行nodeMonitor()函數,該函數3分鐘執行一次,用于判斷各測 定站的網絡通信,若在 3 分鐘內未接收到測定站的心跳包,則表明該測定站網絡通 信故障,具體判斷流程為:遍歷device_status里鍵值對,若device_status[i]['can_status'] > 0 , 表 明 該 測 定 站 在 線 ( 因 為 在 接 收 到 測 定 站 心 跳 時 將 device_status[str(node_id)]['can_status']=2 ) , 然 后 將 該 值 減 去 1 ; 若 device_status[i]['can_status'] =0,則表明在 3 分鐘內未接收到該測定戰的心跳包,那 么將 work_status 和 put_status 值改為 CAN 網絡通信故障的故障碼,并更新數據庫中 記錄。
5.3.3測定站狀態遠程監控
前端對測定站運行狀態進行實時監控,每個Switch組件代表一個測定站,其狀 態代表開關機狀態,并使用圖標表示各測定戰的運行模式,如圖 5-9 所示,綠色圖 標代表測定模式,紅色圖標代表訓練模式,點擊開關機即可控制測定站的當前運行 狀態,當出現故障,在Switch組件下方顯示具體故障原因。
圖 5-9 測定站狀態監控頁面設計
Fig.5-9 Design of Monitoring Station Status Monitoring Page
點擊“設置測定站模式”可對測定站的模式進行控制,使用 Checkbox 多選框組 件進行設計,勾選需要設置的測定站號后,點擊下方的模式即可完成控制,如圖 5- 10所示。測定站的開關機和模式控制均是向下位機發送特定的遠程幀實現,若狀態 和模式切換成功,那么在系統頁面進行實時顯示。
圖 5-10 測定站模式控制頁面
Fig.5-10 Design of mode control page for measuring station
本文采用HTTP協議進行前后端數據的交互,它是基于TCP協議之上的無狀態 協議,只能由客戶端發起請求后,服務器進行響應,完成響應后客戶端與服務器之 間的連接就關閉,無法由客戶端主動發起連接。因此為實現前端測定站狀態的實時 顯示,在測定站狀態監控組件componentDidMount()的生命周期執行setinterval()定
時函數,該函數實現數據查詢功能,即查詢數據庫中各測定站的最新運行狀態和模 式。componentDidMount()在組件掛載后立即調用,渲染會發生在瀏覽器更新之前。
5.4種豬生長性能測定模塊實現
種豬生長性能測定模塊功能都是基于種豬測定基礎數據實現的,一條完整的測 定數據包括種豬耳標、測定站號、采食量(g)、采食開始時間、采食結束時間、體 重( kg ) 。系統初始化時從數據庫獲取已入欄種豬列表到內存,使用 pig_list 列表存 儲種豬列表,里面每個元素為一個字典,代表一頭豬,字典里面包含豬的測定站號、 電子耳標號、種豬號 3 個屬性;獲取未知種豬列表,使用 unknown_pig_list 列表存儲 未入欄種豬,格式與已入欄種豬相同。
5.4.1未知種豬識別
當接收到 CAN 總線發送的測定數據后,根據種豬耳標號和測定站號查詢內存 中 pig_list 中是否存在該種豬,若存在則返回該種豬的種豬號,說明該種豬已入欄, 那么直接進行統計,然后將此條測定數據存入種豬基礎測定數據表中。若查詢結果 為空,則表示該種豬未入欄,屬于未知種豬。但可能已存在于未知種豬列表,因此 判斷是否存在于unknown_pig_list 中,若存在,那么無需更新未知種豬列表,將該條 測定數據存儲于未知種豬基礎測定數據表;若不存在,說明屬于新增的未知種豬, 那么需要更新內存中未知種豬列表,然后將該未知種豬存入未知種豬數據表,并將 該條測定數據存入未知種豬基礎測定數據表,未知種豬識別流程如圖 5-11 所示。
通過測定數據已將種豬區分為入欄種豬和未知種豬,在系統頁面對未知種豬信 息進行展示,育種人員應及時查看未知種豬信息,及時處理未知種豬。未知種豬不 一定是新入欄的種豬,也有可能是已入欄的種豬耳標更換后,被識別為未知種豬, 因此僅需將種豬的耳標更改為現有的耳標即可,無需重新入欄,也不影響種豬個體 測定記錄的數據鏈。
點擊“去入欄”執行新增種豬入欄操作,頁面出現入欄浮層,但未跳轉至入欄 界面,如圖所示,輸入種豬號、測定編號和選擇出生日期完成入欄;若要將該未知 種豬耳標更改為原有種豬,則去“入欄”頁面,修改種豬信息即可。
5.4.2入欄
(1)入欄
根據《種豬登記技術規范》(NY/T820)標準,使用15位的種豬號為種豬建立個 體測定記錄檔案,種豬號與耳標號、測定站號進行關聯,耳標號、測定站號更改不 影響種豬數據鏈。使用Select組件設計一個下拉列表,供用戶選擇入欄的測定站號, 當選擇完成測定站號后,網頁下方顯示當前測定站內種豬列表,根據當前日期和出 生日期計算種豬的實時日齡。輸入新入欄種豬的 15 位種豬號、8 位測定編號、8 位 電子耳標號,使用 DatePicker 日期選擇組件,供用戶選擇種豬的出生日期,避免人 工填寫日期格式不一致等問題。
服務器接收到種豬入欄請求后,首先獲取請求中的種豬號,根據種豬號檢索數 據庫中是否存在相同的種豬號(即使種豬出欄,也不能使用相同的種豬號),若該種 豬號未被使用,那么獲取當前日期作為入欄日期,使用NULL作為出欄日期,將該 種豬信息新增至數據庫中,并更新內存中pig_list已知種豬記錄。根據入欄請求中耳 標號查詢內存中 unknown_pig_list 未知種豬列表中是否存在該種豬,若該種豬在未 知列表,則刪除內存unknown_pig_list中和數據庫中未知種豬數據表中該種豬信息, 并根據耳標號查詢未知種豬基礎測定數據表,對測定數據進行統計計算。
( 2)更改種豬信息
當選擇完成測定站號后,網頁下方顯示當前測定站內的種豬列表,包括種豬號、 測定編號、耳標號、入欄時間、日齡,以及更改種豬信息操作,如圖5-12所示,可 對種豬的種豬號、測定編號和耳標號進行更改。更改種豬號,則對更改后的種豬號 進行唯一性檢查,耳標號更改則判斷更改后的耳標是否存在于未知種豬列表。
更改種豬信息
種豬號 DDSJYZC21000015
測走編號 00000015
耳標號 00000234
圖 5-12 更改種豬信息頁面設計
Fig.5-12 Change the design of the breeding pig information page
5.4.3種豬一日測定統計記錄
接收到種豬的基礎測定數據后,除將其存入數據庫外,還將根據日期進行種豬 一日測定統計。種豬一日測定統計記錄包括種豬號、記錄日期、采食量(g)、采食 次數、采食時長(min)、采食變化量(與前一天的采食量比較)、采食變化百分比(采 食變化量占前一天采食量的百分比)、體重均值、體重變化值(與前一天的體重均值 比較)、體重變化百分比(體重變化量占前一天體重的百分比),統計流程如圖 5-13 即在“一日信息統計表”存在記錄,此時存在兩種情況:①“一日信息統計表”中 最新的一條統計記錄的記錄日期與接收到的采食記錄中的采食日期為同一天,那么 與查詢結果進行計算;②若“一日信息統計表”中最新的一條統計記錄的記錄日期 與接收到的采食記錄中的采食日期不一致,說明查詢的記錄已過期(為前一天的記 錄,而采食發生在新的一天),那么以接收到的采食記錄中的日期新建種豬的一日測 定統計信息,并與前一天的采食量和體重進行比較后,將統計信息新增至數據庫中 “一日信息統計表”。
5.4.4基礎數據查詢
用戶在基礎查看界面可對種豬的基礎測定數據進行查詢,將查詢條件進行了細 分,便于用戶精確獲取到查詢數據。可查詢“所有豬”、“測定站”和“某頭豬”在測 定模式或訓練模式下的數據,開始查詢數據和截止查詢時間精確至某天某時某分, 若不選擇查詢日期,那么以最新日期倒序顯示,基礎數據查詢顯示的數據列為高級 管理員在“系統設置”頁面勾選的數據列。
服務器后端根據查詢條件檢索數據庫中基礎測定數據表,采用分頁技術進行展 示,一次展示50條數據,避免一次性展示所有數據造成瀏覽器加載時間延長,也不 便于用戶查看。
5.4.5體重變化趨勢
根據日期和體重繪制種豬的體重變化曲線,通過下拉列表選擇查詢的測定站, 選中測定站時觸發Select的onChange()函數,調用此函數將用戶選中的測定站號發 送至服務器,服務器返回該測定站內的種豬列表。用戶選擇查詢的開始日期和截止 日期,可以選擇查看具體某頭種豬或所有種豬,如圖 5-14所示。
9-2,體重變化趨勢圖
測走站號:
開始時間:| 2022-03-07 截止時間:2022-03-13
種豬選擇:
圖5-14體重變化趨勢圖頁面設計
Fig.5-14 Weight change trend chart page design
服務器接收到體重變化曲線查詢的條件后,根據查詢條件查詢種豬每天的體重, 然后將查詢結果以日期進行統計后返回前端,前端使用Bizcharts圖表庫繪制曲線圖。
5.4.6日增重和飼料轉化率統計
根據用戶選擇的任意時間階段計算測定站內種豬的日增重和飼料轉化率,使用 表格形式進行展示,便于用戶直觀的獲取在這一階段內種豬的相關信息,包括開始 查詢日期時的體重、結束查詢時的體重、查詢期的測定天數、在查詢日期內的飼料 消耗量、以及所計算的日增重(g/d)和飼料轉化率,界面如圖5-15所示。
©4.曰增重和飼料轉化率統計
測走站號:
開始時問:[2022-03-07 ?]裁止時I'■可:I 2022-03-13
行號 種豬號 耳標號 開始體重(kg) 結束依重(kg) 測定天數(d) 階段耗料(kg) 日增重(g/d) 飼料轉嗨
暫無數據
圖5-15日增重和飼料轉化率統計頁面設計
Fig.5-15 Daily weight gain and feed conversion ratio statistics page design
5.5采食性狀分析模塊實現
5.5.1種豬個體采食量趨勢
種豬個體采食量趨勢根據種豬一日測定統計記錄中的記錄日期和采食量進行繪 制。根據用戶選擇查詢日期和種豬查詢 “一日信息統計表”中種豬在查詢日期內每 天的采食量,并計算查詢日期內的采食量和平均采食量。將計算結果反饋至前端, 前端采用表格、曲線和柱狀圖 3 種形式進行展示。
5.5.2采食總量與周采食量統計
(1)采食總量統計測定站內所有種豬某一天的采食總量和采食次數,并計算采 食量的均值和總和,使用表格對數據進行展示,如圖 5-16 所示。
8,采食總量
測曲號: 009
瞬日期: 2021-02-01
種磐 采食量(g)
1 平均值 0.00
2 總和 0
圖 5-16 采食總量頁面設計
Fig.5-16 Total feed intake page design
(2)測定站周采食量統計任意一周測定站內所有種豬每天的采食量、一周的采 食總量和總采食量,并統計每天所有種豬的采食總量,并以表格的形式進行展示。
當用戶選擇完成開始查詢的日期后,使用JavaScript中moment模塊在選擇的開始查 詢日期基礎上增加6 天或在選擇的結束查詢日期減去6 天,因此用戶只需選擇開始 日期或結束日期即可。查詢條件選擇完成后,調用數據查詢函數,向服務器后端發 起數據查詢請求。“上一周”自動獲取選擇的查詢日期的上一周,“上一周”同理。
乞、測定站周采負最統計 C
圖 5-17 測定站周采食總量統計頁面設計
Fig.5-17 Design of the statistical page for the total amount of feed consumed by the measuring station
5.5.3采食量區間統計與采食時段頻率統計
(1)采食量區間統計根據種豬每次采食的采食量統計,即進行種豬單次采食量 區間頻率統計,每200g為一個區間,如0-200g、200-400g,最大區間為>1600g。不 同生長階段、個體的采食性狀均存在采食差異,為便于育種人員探究,將統計條件 進行細化,可對育種場內所有種豬或某個測定站內種豬在任意階段的單次采食量進 行頻率統計,并以柱狀圖進行展示,直觀進行對比,如圖 5-18所示。
圖 5-18 采食量區間頻率統計頁面設計
Fig.5-18 Frequency statistics page design of feed intake interval
(2)不同采食時段頻率統計用于探究種豬采食的晝夜節律,在查詢條件上面也 進行了細分,提供對育種場內所有種豬或某一測定站內種豬統計在任意階段的采食 習慣。以每2h為一個區間進行頻率統計,如0-2h、2-4h
服務器接收到前端的查詢請求后,檢索數據庫中“種豬基礎數據表”滿足查詢 條件的種豬基礎測定數據,對每次的采食量和采食時間進行頻率統計,然后將統計 結果反饋至前端,前端根據統計結果繪制柱狀圖。
5.5.4異常個體識別
種豬采食行為與飼料水平、豬只體況、環境等因素相關,采用采食變化量、體 重變化量標識異常個體不盡合理,隨著種豬的生長,其采食量和體重變化范圍也在 隨著增長。根據《種豬性能測定規程》異常個體識別辦法,將采食量和體重下降 20% 的種豬識別為異常個體,提示育種人員重點關注,降低種豬疾病感染風險。因此采 用采食量和體重的變化率(變化量占前一天的百分比)。在種豬一日測定統計記錄中 對種豬每天的采食和體重變化率進行了統計,使用此數據即可標識異常個體,如圖 5-20 所示。
10^預警分析
測謝號:010
開始時間:2022-03-07 £:截止時間:2022-03-13
彳墻 牘號 耳標號
個増加 心網 !不變
圖 5-20 異常個體識別頁面設計
Fig.5-20 Abnormal individual identification page design
將采食量或體重的變化率大于-20%的標記為異常個體,并使用紅色下降箭頭進 行標識,變化率在-20%-20%之間視為正常,而增長 20%的使用綠色上升箭頭進行標 識。
5.5.5種豬達100 kg體重日齡預測
采食行為與生長性能性狀相關性分析。使用 scipy.statas 包中的 pearsonr 函數即 可計算種豬采食性狀和生長性狀間pearson相關性r和顯著性p。其中r在-1到1之 間,其絕對值越大表明相關性越強;p越小表明其相關性越顯著。
種豬達100 kg體重日齡預測模型。根據開測日齡和開測體重計算種豬達30 kg 時的體重日齡AGE30,如公式(5-1)所示
AGE30 =S +[30-W]xb (5-1)
式(5-1)中,S—開測時日齡(d);爐一開測時體重(kg);方一校正參數,杜洛克豬 為1.536,長白豬為1.565、大白豬為 1.550。
此外,計算種豬開測后一個月內的平均單次采食量、采食速度、日采食量、開 始體重、開始日齡和達30 kg體重日齡,并對各特征進行標準化處理,由3.3節中建 立的PLS回歸模型方程預測種豬達100 kg體重日齡。
5.6 本章小結
本章在第2 章功能需求分析和第4 章系統設計基礎上,從系統用戶模塊、測定 站實時監控模塊、種豬生長性能測定模塊和采食性狀分析模塊 4 個方面出發,詳細 地闡述了各功能的實現原理,包括頁面設計和后端邏輯處理,通過界面設計圖和流 程圖對實現過程給出了詳細的介紹,由此完成了整個種豬性能測定信息管理系統的 設計。
6種豬性能測定信息管理系統試驗
系統試驗分兩次進行,育種人員使用瀏覽器即可使用種豬性能測定信息管理系 統。分別對信息管理系統與測定站之間的數據傳輸的可靠性以及功能模塊運行穩定 性進行測試。
6.1數據傳輸可靠性試驗
第一次試驗于2020年11月23號至2021年2月7號在華中農業大學試驗豬場
采用兩臺測定站分別測定5頭體重為42.9±6.1kg的長白豬,信息管理系統部署在阿 里云ESC服務器。試驗前在兩臺測定站內均放置存儲測定數據的SD卡,試驗結束 后對比 SD 卡與信息管理系統 MySQL 數據庫中的測定數據數量。試驗現場圖如圖
6-1 所示。
圖 6-1 第一次試驗現場圖
Fig.6-1 The first test site map
6.1.1用戶模塊功能測試
在系統的登錄界面使用用戶名“root”和密碼“hzau88888”進行登錄,如圖6-
2 所示。登錄成功后,進入系統首頁“測定站狀態”功能頁。
圖 6-2 用戶登錄
Fig.6-2 User login
6.1.2測定站實時監控功能測試
“測定站狀態”頁對兩臺種豬性能測定站的運行狀態(開機、關機和故障狀態) 以及運行模式(測定模式和訓練模式)進行實時監控,如圖6-3 所示,用戶根據實際 使用需求可在該頁面對測定站進行實時控制。
圖 6-3 測定站實時監控
Fig.6-3 Measurement station real-time monitoring
6.1.3數據傳輸可靠性分析
整個試驗期間,MySQL數據庫共采集存儲5994條采食記錄,與種豬性能測定 設備中存儲模塊數據對比情況如表 6-1 所示。
表 6-1 數據丟失率統計表
Table6-1 Statistical table of data loss rate
測定站號 實發數據量(條) 接收數據量(條) 丟失率%
001 2775 2775 0
002 3219 3219 0
系統日志表明,1月27號11:29分時兩臺測定站出現“CAN網絡通信故障”,2 月 1 號 14:10分001 號測定站通信恢復正常,測定站狀態更改為開機狀態, 2月 1 號 14:42 分 002 號測定站通信恢復正常,系統日志記錄如圖 6-4 所示。由于通信故障, 故障期間數據未能實時傳輸存儲,通信恢復正常后,“重發”機制將發送失敗數據再 次進行發送,如圖6-5所示,其“系統時間”為數據接收時間。
記錄事件
002測定站,2021/02/01 14:42 開機
03 測定站,2021/02/01 1410 開機
001測走站r 2021/01/27 7:29 CAN網絡通信故陰
002測走站r 2021/0727^1:^9匸AN網絡通信故隱
圖6-4系統日志記錄
Fig.6-4 System logging
圖 6-5 信息管理系統基礎數據查詢結果
Fig.6-5 Information management system basic data query results
試驗結果表明,系統的“重發”機制確保了通信穩定性,即使出現網絡故障等 通信問題,待通信恢復后,將正常對種豬性能測定數據進行傳輸。
6.2種豬性能測定試驗
第二次試驗于 2021 年 5 月 1 號至 2021 年 6 月 30 號在湖北省某國家級生豬核 心育種場采用兩臺測定站分別測定11頭杜洛克種豬,開始測定日齡為95-105天, 開始測定體重為35.4±6.5 kg,結測體重應285kg,否則不滿足種豬生長性狀校正條 件。試驗現場如圖6-6所示。經5天的訓練模式適應測定站采食后,正式進入測定 模式開始種豬生長性能測定。
圖 6-6 第二次試驗現場圖
Fig.6-6 The second test site map
通過種豬性能測定試驗對信息管理系統的用戶模塊、測定站實時監控模塊、種 豬生長性能測定模塊和采食性狀分析模塊進行功能穩定性測試,其中用戶模塊和測 定站實時監控模塊與第一次試驗結果相同,本節主要針對種豬生長性能測定模塊和 采食性狀分析模塊測試結果進行介紹。
6.2.1 種豬生長性能測定模塊功能測試
(1)未知種豬識別
種豬在開始測定前均需佩戴RFID電子耳標,但未在系統進行身份采集(入欄),
當種豬在測定站內采食后,將被識別為未知種豬,用戶在“未知種豬”頁面可查看
當前未知種豬信息,并對其進行入欄,未知種豬信息如圖6-7所示。
圖 6-7 未知種豬列表
Fig.6-7 List of unknown breeding pigs
( 2)入欄 只有在系統中入欄的種豬才能建立個體測定記錄,因此用戶應及時對測定站內 的未知種豬進行入欄,完成對種豬身份的采集,完善數據。009號測定站入欄種豬身 份信息如圖6-8所示,日齡由種豬的出生日期和查詢時日期計算所得。
種鵜 耳備 入欄時間
1 DDSJYZC21000015 00000015 00000234 2021-04-26
2 DDSJYZC21000014 00000014 00000283 202104-26
3 DDSJYZC21000010 00000010 00000291 2021-04-26
4 DDSJYZC20000002 00000002 00000445 2021-04-26
5 DDSJYZC21CKXXX)1 00000001 00000427 2021-04-26
6 DDSJYZC21CKKXX)3 OOOOOCX)3 00000284 202104-26
7 DDSJYZC21CKKXXM 00000004 00000490 2021-04-26
圖 6-8 009 號測定站種豬列表
Fig.6-8 List of breeding pigs of No. 009 test station
( 3)種豬基礎數據查詢 使用系統的“基礎數據查詢”功能可查詢指定條件下的種豬基礎測定數據,如
查詢“所有豬”“測定”模式下5月 10號到5月 13 號的數據,
圖 6-9 基礎數據查看結果
Fig.6-9 Basic data view results
4)種豬體重變化趨勢圖
種豬體重變化趨勢圖”反映種豬的生長變化規律,其斜率為種豬的日增重, 可以直觀對比不同種豬的生長差異,及時淘汰生長緩慢的種豬。并且該功能反映種 豬測定數據的連續性和完整性,當種豬的測定數據缺失或體重數據有誤,那么曲線 將不連續并且變化較大。以010號測定站試驗期內的種豬為例,如圖6-10所示,種 豬體重整體呈現上升趨勢,但其生長速度也表現出明顯的個體差異,每頭種豬的體 重變化曲線連續無缺失,說明整個試驗期間種豬的測定數據鏈完整。
圖 6-10 010 號測定站內種豬體重變化趨勢圖
圖 6-11 010 號測定站內種豬日增重和飼料轉化率統計結果
Fig.6-11 Statistical results of daily weight gain and feed conversion rate of breeding pigs in No. 010
testing station
6.2.2采食性狀分析模塊功能測試
( 1)個體采食量趨勢圖
品種、性別、飼料適口性或個體檢差異都將影響種豬采食量,研究表明隨著豬 體重的增加其每天的采食量也將隨之增加,對種豬的個體采食量進行連續監測有助 于探索同一條件下的種豬個體差異。如DDSJYZC21000003號種豬在5月11號至5 月 19號的采食量趨勢如圖6-12所示,曲線圖中藍色直線為所選日期的采食量均值, 綠色曲線則為該種豬每天的采食量,平均每天的采食量增加83g, 5月14號采食量 相較于5月13號下降58g,大體上呈現緩慢上升的趨勢,采食變化率為3%,屬于
Fig.6-12 DDSJYZC21000003 Breeding Pig Feed Intake Curve Trend
( 2)采食總量和周采食量 采食總量則是通過表格化的形式來對比同一測定站內某一天不同種豬的采食量, 如 009號測定站內5 月 10 號的不同種豬的采食量如圖6-13 所示,并且根據各種豬 的采食量計算測定站的總采食量和采食均值。
種豬號 采億量(g)
1 DDSJYZC21000015 2268
2 DDSJYZC21000014 997
3 DDSJYZC21000010 2421
4 DDSJYZC20000002 2071
5 DDSJYZC21000001 1639
6 DDSJYZC21000003 1620
7 DDSJYZC21000004 2445
8 平均值 1923.00
9 總和 13461
圖 6-13 009 號測定站采食總量圖
Fig.6-13 Chart of total feed intake of No. 009 measuring station
測定站周采食量統計則是便于育種人員統計種豬的總耗料,以周為階段對測定
站內種豬的采食量進行統計,如009號測定站6月1號至6月7號的測定站周采食
圖 6-14 009 號測定站周采食量統計結果圖
Fig.6-14 Statistical results of weekly feed intake at No. 009 measuring station (3)采食量頻率和采食時段頻率統計 使用“采食量區間圖”功能,對009號測定站5月1號至5月31號種豬的單次 采食量進行頻率統計,統計結果如圖 6-15 和圖 6-16 所示,可以看出該測定站內種 豬的單次采食量在0-200g的頻率最高為38%,而單次采食量大于600g的頻率為僅 15%;對009號測定站6月1號至6月31號種豬的單次采食量進行頻率統計,種豬 的單次采食量最高區間為 200-400g 為 23%,而單次采食量大于 600g 的頻率增至 37%,統計結果如圖所示。與現有研究結果相同,即隨著豬體重的增加,豬的單次采 食量也逐漸增加。
采食量區間圖
測訣號:009
開始時間:2021-05-01 o 戳止時間:2021-05-31
采食臺區間圖
圖 6-15 009 號測定站 5 月 1 號至 5 月 31 號采食量頻率統計結果
Fig.6-15 Statistical results of frequency of feed intake from May 1st to May 31st at No. 009 measuring
station
、9-1采食量區間圖
雄站號:009
開始時間: 2021-06-01 S 截止時間: 2021-06-30
采食量區間圖
圖 6-16 009 號測定站 6 月 1 號至 6 月 30 號采食量頻率統計結果
Fig.6-16 Statistical results of frequency of feed intake from June 1 to June 30 at No. 009 measuring
station
使用“不同時段采食頻率分布圖”分階段對 009 號測定站內種豬的采食時段進 行頻率統計,第一階段為5 月 1 號至5 月 31 號,第二階段為 6月 1 號至6月 30號, 統計結果分別如圖 6-17 和圖 6-18 所示,由統計結果可以看出不同階段種豬的采食 時間大致呈現相同的規律,兩個采食高峰期分別為早上 6 點到 10 點,以及中午 12
點到下午 6 點,呈現明顯的晝夜節律,白天采食占全天采食的 68%,全天皆有采食
(Hall AD et al 1999)。
9-3不同時段采食頻率分布圉
009
刑8時冋:2O2HB-O1 監止時何;2021-05-31
采食時段分析
圖 6-17 009 號測定站 5 月 1 號至 5 月 31 號采食時段頻率統計結果
Fig.6-17 Statistical results of frequency of feeding period from May 1st to May 31st at No. 009
measuring station
©•3不同時段采負頻率分布圖 O
測裁號:009
JW69J 間;2021-06-01 箭止時何;2021-06-30
采食時段分析
圖 6-18 009 號測定站 6 月 1 號至 6 月 30 號采食時段頻率統計結果
Fig.6-18 Statistical results of frequency of feeding period from June 1st to June 30th of No. 009
measuring station
( 4)異常個體識別 系統采用種豬體重和采食量的降低百分比識別異常個體,當體重或采食量的變 化量相較于前一天降低 20%,那么將標記為異常個體,使用紅色箭頭標識,如圖所 示,該圖為 009號測定站5 月 7號至 5 月 12 號間測定站內各種豬的體重和采食量, 共出現 5 個預警,但出現預警后體重和采食量又恢復正常水平,因此無異常出現, 若出現預警提示并且后續采食量和體重并沒有回升至正常水平,那么育種人員應及 時查看該個體。
種豬號 耳磚 05-07 05-08 05-09 05-10 05-11 05-12
采食量:1835g 介 采食量:1576g W 采倉量:1671 g 個 采食量:2268g 個 采•食量:1869g W 采食星:1571 g
DDSJYZC21000015 00000234
體重:54.08 kg 介 體重:54.81 kg 個體重:55.7 kg 個 體重:56B7 kg 個體重:5835 kg 個 體重:58.15 kg
采述:1267g 1 采食量;1312g 個 采倉星;1606g 個 萊食量;997g 1 采食S; 2302g 個采食星;1242g
DDSJYZC21000014 00000283
體重:32.94 kg 個依重:3342 kg 個體重;343 kg 個 體重:35.05 kg 個體重;35.59 kg 個體重:36.64 kg
SO: 1663g 1 S-ftS: 1944g 個 菜貧量:218Sg 個 菜食量:2421g 個 采■貪量:2135g 1 采食量:2291 g
DDSJYZC21000010 00000291
體重:44.67 kg 小體重:45.92 kg 個體重:4737 kg 個 體重:43,61 kg 個體重:49.73 kg 個體重:50.5 kg
柔食量:1572g 1 菜負星:2435g 個采倉量:2297g 1 菜負量:2071g 1 采^fi: 2113g 個采負量:2375g
DDSJYZC20000002 00000445
58.3 kg 小體重:58月1 kg 個體重:60.93 kg 個 體重:61.65 kg 個體重:61.9 kg 個體重:63.1 kg
采食量:1415g 不 1275g 心 采童■量:1636g 個 1639g 個采食量:2098g 個采食量:1837g
DDSJYZC21000001 00000427
休重:37.51 kg 個體重:39.59 kg 個體重:4128 kg 個 C£S: 42.55 kg 個體重:4349 kg 個體重:44,75 kg
抵量:733g 2 萊負星:1306g 個采倉量:1375g 不 華食雖1620g 個 采■食量:1242g 心采ftS: T544g
DDSJYZC21000003 00000284
體重:32.93 kg 不體重:34.09 kg 個體重:35.02 kg 個 體重:3656 kg 個體重:37.37 kg 心休重:38.24 kg
采ftS: 2352g 不 萊負量:2212g W 采倉星:229Sg 不 采妲2445g 個采■食量:2650g 個采食星:2777g
DDSJYZC21000004 0000M90
體重:55.21 kg 不體重:56.92 kg 個體重:58.53 kg 個 體重:59,41 leg 個體重:61.28 kg 個體重:62.1 kg
1不變
圖 6-19 異常個體識別
Fig.6-19 Identification of abnormal individuals
(5)種豬采食性狀與生長性狀相關性分析
試驗結束時,滿足測定條件的種豬14頭(結測體重>85kg),種豬達100 kg體 重體重日齡計算公式如(6-1)所示。
AGE100 =S + (Wt-W1)*(S -A)/W1 (6-1)
式(6-1)中,S—種豬從出生到稱重當天的日齡(d); Wt—100 (kg);函一結測當 天體重(kg); 4—校正參數,大白豬為50.775、長白豬為48.441、杜洛克豬為55.289。
14頭滿足測定條件試驗豬的生長性狀(日增重、達100kg體重日齡和飼料轉化 率)與采食性狀(日采食量、日采食次數、日采食時長、單次采食量和采食速率) 之間 Pearson 相關性如表 6-2 所示。
表6-2生長性狀與采食性狀表型相關性
Table6-2 Phenotypic correlations between growth performance traits and feeding traits
Trait ADG AGE100 FCR ADFI ANVD AOTD AFIV ADFR
ADG 1
-0.738**
AGE100 1
(0.00)
0.249 -0.352
FCR 1
(0.31) (0.15)
0.891** -0.760** 0.627**
ADFI 1
(0.00) (0.00) (0.00)
-0.273 0.127 -0.340 -0.381
ANVD 1
(0.27) (0.61) (0.16) (0.11)
-0.091 0.072 0.048 -0.005 0.002
AOTD 1
(0.72) (0.77) (0.84) (0.98) (0.99)
0.556* -0.407 0.502* 0.681** -0.875** -0.049
AFIV 1
(0.01) (0.09) (0.03) (0.00) (0.00) (0.84)
0.290** -0.590** 0.337 0.579* 0.332 -0.782** 0.534*
ADFR 1
(0.00) (0.00) (0.17) (0.012) (0.17) (0.00) (0.02)
注.**.在0.01水平(雙尾),相關性顯著;*.在0.05水平(雙尾),相關性顯著。Note: * indicates significant correlation at the 0.05 level (two-tailed); ** indicates significant correlation at the 0.01 level (two-tailed).
由表6-2分析得出:①日增重(ADG)與達100 kg體重日齡(AGEioo)呈現極 顯著負相關(P<0.01), FCR和日增重(ADG)、達100 kg體重日齡(AGEioo)均無 顯著相關關系。說明日增重較快的種豬達到目標體重所需的日齡越短,其背膘也越 厚,雖然日增重與FCR并無顯著相關性,但日增重和FCR存在一定的遺傳負相關, 因此在育種工作中,生長速度和 FCR 通常被同時進行選擇( Chatelet A et al 2017, Chantziaras I et al 2020)。
②日采食量(ADFI)與日增重(ADG)、達100 kg體重日齡(AGE100)和FCR 均呈現極顯著相關(P<0.01),單次采食量(AFIV)和采食速率(ADFR)不同程度 地顯著影響種豬的生長速度和FCR,而采食時長(AOTD)和采食次數(ANVD)與 生長性狀卻無明顯相關性。說明種豬采食性狀與生長性狀密切相關,日采食量較高 的種豬其生長速度也相對較快,但飼料利用率卻較低,此外,相關性結果表明種豬 采食次數和采食時長對其生長性狀無顯著影響,但單次采食量和采食速率卻與 4 個 生長性狀均密切相關。
③日采食量(ADFI)與單次采食量(AFIV)呈現極顯著正相關(P <0.01),與 采食速率(ADFR)呈現顯著正相關,而與采食時長和采食次數無顯著相關性。相關 性結果表明日采食量高的種豬其單次采食量和采食速率也相對較高,與每天的采食 時長和采食次數無明顯相關關系,但采食時長和采食次數卻顯著影響單次采食量和 采食速率。
試驗種豬的表型相關性與 3.2節分析規律類似,因此可以使用試驗種豬對3.3節 所構建的種豬達目標體重日齡PLS預測模型進行測試。
(6)種豬達100 kg體重日齡預測 選取達到測定條件的 14頭種豬 5月1 號至6月1 號的采食性狀,并與生長性狀 結合,使用3.3節構建的PLS預測模型對其達100kg體重日齡進行預測。14頭種豬 達 100kg 體重日齡實測值和 PLS 模型預測值如表 6-3 所示。
表6-3試驗種豬AGE]。。實測值與預測值
Table6-2 Measured and predicted values of AGE100 in experimental breeding pigs
試驗種豬號 AGE100實測值(d) AGE100預測值(d)
DDSJYZC21000001 182.5 174.6
DDSJYZC20000002 167.5 164.1
DDSJYZC21000003 184.8 176.4
DDSJYZC21000004 156.7 161.5
DDSJYZC21000010 167.2 164.5
DDSJYZC21000015 174.7 166.1
DDSJYZC21000016 176.3 170.8
DDSJYZC21000017 177.5 169.0
DDSJYZC21000019 167.5 163.6
DDSJYZC21000020 167.8 163.9
DDSJYZC21000021 158.2 163.7
DDSJYZC21000022 169.3 164.9
DDSJYZC21000024 168.1 165.4
DDSJYZC21000029 156.5 160.8
PLS模型的決定系數R2為0.55,平均絕對誤差MAE為5.3 d。此次試驗預測 MAE相較建模數據大2d,其原因可能與種豬品質、測定條件(飼養密度(李永振等 2021)、飼料品質(Brooke G et al 2015, Gouvea et al 2019, Deru et al 2020, Deru V et al 2020, Honeck A et al 2020))等差異有關,因此預測誤差相較于建模數據有所出 入。
由上述測試可知,種豬性能測定系統與測定站之間數據傳輸可靠,各功能模塊 運行穩定,滿足預期設計要求。
6.3 本章小結
本章為測試系統的通信可靠性和功能運行穩定性,展開了兩次養殖試驗,試驗 結果表明種豬性能測定系統的通信協議中的“確認”、“校驗”和“重發”機制設計 合理,確保了每條種豬測定數據的成功采集和存儲;并且種豬性能測定管理信息管 理系統的各功能模塊滿足預期設計要求,實現了對育種場內的測定站實時遠程監控、 種豬生長性能測定性狀指標計算以及采食性狀分析。
7總結與展望
7.1 總結
本文利用web技術設計了一個集種豬性能測定性狀計算、采食性狀分析和設備 遠程管理為一體的種豬性能測定信息管理系統,主要工作如下:
(1)通過杜洛克種豬的生長性能測定數據,分析了日增重、飼料轉化率、校正 背膘厚和校正達100 kg日齡4個生長性能性狀與日采食量、日采食次數、日采食時 長、單次采食量和采食速率 5 個采食性狀間表型相關性;并將種豬日齡和體重特征 與測定早期采食行為特征結合,建立了種豬達100 kg體重日齡PLS預測模型,交叉 驗證測試集平均R2為0.68,平均MAE為3.2 d,Spearman相關性為0.796,證明可 以使用采食性狀與生長性狀結合對種豬生長速度進行預測。但建模時使用的數據量 較小,后期應增加建模數據量,增加預測時的維度如品種、實時體重和日齡等,以 提高預測模型準確率,為種豬選育提供有力參考,提前淘汰生長緩慢種豬,提高育 種效率。
(2)設計了一個具有設備遠程實時監控、種豬采食性狀分析和測定指標計算等 功能的種豬性能測定信息管理系統。系統在UDP通信協議基礎上加入確認、校驗和 重發機制,從而使系統數據傳輸具有實時性高、可靠性強特點;系統開發選用 B/S
(Browser/Server)架構,前端基于Reactjs技術棧,后端采用flask web框架和MySQL 數據庫。完成系統開發后,進行兩次養殖試驗,第一次試驗在華中農業大學試驗豬 場展開,試驗結果表明,采食數據無一丟失,系統數據傳輸具有實時性強、可靠性 高等特點;第二次試驗在湖北省某國家生豬核心育種場展開,試驗結果表明,各功 能模塊運行穩定,滿足預期設計要求,可為我國種豬育種體系優化升級提供參考和 借鑒,并驗證了生長性能性狀與采食行為性狀之間關系。使用本文構建的達100 kg 體重日齡預測模型對此次試驗種豬達100 kg體重日齡進行提前預測,其誤差MAE 為 5.3 d。
7.2 展望
本文雖然利用種豬的測定數據對其采食性狀進行了分析,并根據采食特性構建 了種豬達100 kg體重日齡預測模型,但仍有待改進的地方:
(1)系統基于種豬每天的體重和采食量變化率識別異常個體,后續應考慮增加 異常個體的識別方法,對種豬疾病進行提前預警,降低疾病感染風險。
(2)增加系統的采食性狀分析功能模塊的豐富度,目前系統對種豬的采食性狀 分析功能是較為初級的,后續需要對此模塊功能進行深入的探索和研究,提高測定 數據的利用效率。
(3)種豬達 100 kg 體重日齡預測模型建模數據量較少,而且建模時只考慮了 杜洛克這一品種的種豬,后續應增加建模數據量并考慮季節、飼料水平、品種等特 征,以提高模型的泛化性,減小預測誤差,為種豬生長速度預測提供有力的評估手 段,縮短種豬性能測定周期,減少測定成本。
參考文獻
1.曹守啟, 葛照瑞, 張錚. 基于物聯網的浮標水質監測系統與溶解氧濃度預測模型. 農業機械學報.2021, 52(11): 210-218.
2.曹引, 冶運濤, 趙紅莉, 蔣云鐘, 王浩, 嚴登明. 基于離散粒子群和偏最小二乘 的水源地濁度高光譜反演. 農業機械學報. 2018, 49(01): 173-182.
3.陳韜羽.基于UDP的帶自適應冗余編碼的無線P2P傳輸模型研究與實現.[碩士 學位論文]. 廣州:華南理工大學,2019.
4.丁向東, 邱小田, 王志剛, 楊紅杰, 陳瑤生, 張勤. 全國生豬遺傳改良計劃 (2009—2020)給我國生豬種業帶來的變化和未來工作建議. 中國畜牧雜志. 2020, 56(06): 169-174.
5.丁友強, 劉彥偉, 楊麗, 張東興, 崔濤, 鐘翔君. 基于 Android 和 CAN 總線的玉 米播種機監控系統研究. 農業機械學報. 2019, 50(12): 33-41+62.
6.馮澤猛, 張云華, 賀玉敏, 王荃, 周腳根, 葉侖, 李鐵軍, 印遇龍. 智能養殖:生豬 行為研究及其應用. 農業現代化研究. 2021, 42(01): 1-9.
7.高萬林, 李靜, 肖穎, 張港紅, 胡慧, 董智文. 豬場信息綜合管理系統研究(英文). 農業工程學報. 2015(S1 vo 31): 230-236.
8.郭彬彬, 孫愛東, 丁為民, 施振旦, 趙三琴, 楊紅兵. 種鵝舍環境智能監控系統 的研制和試驗. 農業工程學報. 2017, 33(09): 180-186.
9.何東健, 劉冬, 趙凱旋. 精準畜牧業中動物信息智能感知與行為檢測研究進展. 農業機械學報. 2016, 47(05): 231-244.
10.何淼,王浩,黃勇,薛紹,沈吟青.基于MVC分布框架的破片戰斗部仿真系統設 計. 系統仿真學報. 2020, 32(09): 1744-1752.
11.蔣建東, 孫遠方, 金驍, 周倩, 毛智琳. 聯合收獲機 CAN 總線架構設計與試驗. 農業機械學報. 2019, 50(06): 93-99.
12.李華龍, 李淼, 詹凱, 楊選將, 翁士狀, 袁媛, 陳晟, 羅偉, 高會議. 基于物聯網 的層疊式雞舍環境智能監控系統(英文). 農業工程學報. 2015(S2 vo 31): 210215.
13.李瑾, 郭美榮, 高亮亮. 農業物聯網技術應用及創新發展策略. 農業工程學報. 2015(S2 vo 31): 200-209.
14.李寧.L-茶氨酸對肥育豬生長性能、血液指標和采食行為的影響.[碩士學位論文]. 咸陽:西北農林科技大學,2016.
15.李永振, 王朝元, 黃仕偉, 劉作華, 王浩. 飼養密度和玩具對育肥豬生產性能、行 為和生理指標的影響. 農業工程學報. 2021, 37(12): 191-198 .
16.林蘭芬, 王瑞松, 于鵬華. 基于 GIS 的農田小氣候環境可視監測系統. 農業機械 學報.2015, 46(03): 254-260.
17.劉成良, 林洪振, 李彥明, 貢亮, 苗中華. 農業裝備智能控制技術研究現狀與發 展趨勢分析. 農業機械學報. 2020, 51(01): 1-18.
18.劉望宏, 倪德斌, 胡軍勇. 種豬性能測定的關鍵技術與應用. 養殖與飼料. 2014(09): 1-5.
19.劉媛. 基于 CAN 現場總線的激光器遠程監控系統. [碩士學位論文]. 武漢:華中 科技大學, 2019.
20.龍長江, 譚鶴群, 朱明, 辛瑞, 覃光勝, 黃彭志. 畜禽舍移動式智能監測平臺研 制. 農業工程學報. 2021, 37(07): 68-75.
21.羅熠.基于CAN總線-以太網架構的大型監控系統設計與實現策略研究.[碩士學 位論文]. 武漢:華中科技大學, 2020.
22.落紅衛. 移動互聯網身份認證關鍵技術研究. [博士學位論文]. 北京:北京郵電大 學, 2021.
23.中華人民共和國農業農村部公報. 農業農村部辦公廳關于印發《國家畜禽良種聯 合攻關計劃(2019—2022年)》的通知 -中國農村網(2019-08-02).
24.時超. 杜洛克、長白、大白豬采食特性與生長性能研究. [碩士學位論文]. 昆明: 云南農業大學, 2016.
25.司徒金水, 朱曉彤, 江青艷, 羅旭芳. 環境因素對豬生產性能的影響. 家畜生態 學報. 2021, 42(08): 8-14.
26.汪鳳珠,趙博,王輝,劉陽春,李陽,王麗麗.基于ZigBee和TCP/IP的鹽堿地田 間監控系統研究. 農業機械學報. 2019(S1 vo 50): 207-213.
27.王楚豫, 謝磊, 趙彥超, 張大慶, 葉保留, 陸桑璐. 基于 RFID 的無源感知機制研 究綜述. 軟件學報. 2022, 33(01): 297-323.
28.王平. 口令認證與密鑰協商的研究與實現. [碩士學位論文]. 南京:南京郵電大學, 2021.
29.王獻偉, 張家慶, 徐澤君, 茹寶瑞, 王曉鋒, 吳亞權, 邢寶松. 河南省種豬生產性 能測定數據的分析與應用. 飼料研究. 2019, 42(08): 116-119.
30.魏圓圓, 王雪, 王儒敬, 桂元苗. 基于 WebGIS 的農場生產管理信息系統的設計 與實現. 農業工程學報. 2018, 34(16): 139-147.
31.熊本海, 蔣林樹, 楊亮, 潘曉花. 種豬生產性能測定系統開發與性能測試. 農業 工程學報. 2017, 33(09): 174-179.
32.熊本海, 楊振剛, 楊亮, 潘曉花. 中國畜牧業物聯網技術應用研究進展. 農業工 程學報. 2015(S1 vo 31): 237-246.
33.楊曉丹. 豬自動生長性能測定設備的數據質量管控研究. [碩士學位論文]. 杭州: 浙江大學,2018.
34.于冰. GBS 軟件在種豬生產上的應用領域及其先進性研究. 食品安全導刊. 2015(14): 73.
35.余力, 黃云, 高凱, 張燕磊. 一種基于 Web2.0 的協同評價與群體決策方法. 系統 工程. 2017, 35(06): 145-151.
36.張翠翠,周國祥,俞磊,石雷,王青青.基于MVC的試卷生成及主觀題判卷算法 研究. 系統仿真學報. 2020, 32(01): 105-112.
37.張小栓, 張夢杰, 王磊, 羅海玲, 李軍. 畜牧養殖穿戴式信息監測技術研究現狀 與發展分析. 農業機械學報. 2019, 50(11): 1-14.
38.張真, 遲瑞娟, 杜岳峰, 謝斌, 鄧曉杰, 韓科立. 基于 CAN 總線的玉米收獲智能 控制系統研究. 農業機械學報. 2018(S1 vo 49): 275-281.
39.張智韜, 王海峰, 韓文霆, 邊江, 陳碩博, 崔婷. 基于無人機多光譜遙感的土壤 含水率反演研究. 農業機械學報. 2018, 49(02): 173-181.
40.周磊, 王曄, 毛瑞涵, 李佳芮, 劉劍鋒. 國外生豬育種體系簡析及對我國生豬育 種的幾點思考. 中國畜牧雜志. 2021, 57(01): 231-236.
41.Andretta I, Pomar C, Rivest J, Pomar J, Radunz J. Precision feeding can significantly reduce lysine intake and nitrogen excretion without compromising the performance of growing pigs. Animal. 2016, 10(7): 1137-1147. Cambridge University Press, 2016: 1137-1147.
42.Angarita BK, Han J, Cantet RJC, Chewning SK, Wurtz KE, Siegford JM, Ernst CW, Steibel JP. Estimation of direct and social effects of feeding duration in growing pigs using records from automatic feeding stations. Journal of Animal Science. 2021, 99(5): skab042.
43.Boumans IJMM, De Boer IJM, Hofstede GJ, Bokkers EAM. Unravelling variation in feeding, social interaction and growth patterns among pigs using an agent-based model. Physiology & Behavior. 2018, 191: 100-115.
44.Brooke G, Edwards AC, Pluske JR, Howarth GS, Campbell RG, Dunshea FR. Replacing starch with fat in the diet is more effective at enhancing overall performance in finisher than grower pigs. The Journal of Agricultural Science. 2015, 153(6): 11071115. Cambridge University Press, 2015: 1107-1115.
45.Chantziaras I, Meensel JV, Hoschet I, Leen F, Messely L, Maes D, Millet S. Carcass gain per kg feed intake: developing a stakeholder-driven benchmark for comparing grow-finishing pig performance. Animal. 2020, 14(12): 2609-2618. Cambridge University Press, 2020: 2609-2618.
46.Chatelet A, Gondret F, Merlot E, Gilbert H, Friggens NC, Floc'h NL. Impact of hygiene of housing conditions on performance and health of two pig genetic lines divergent for residual feed intake. Animal. 2018, 12(2): 350-358. Cambridge University Press, 2018: 350-358.
47.Chen T, Guo L, Hao M, Zhao Y. Operation Scale Expansion Method Research for Smart Lamp Pole ZigBee System//2021 IEEE 2nd International Conference on Big Data, Artificial Intelligence and Internet of Things Engineering (ICBAIE).
48.Deru V, Bouquet A, Hassenfratz C, Blanchet B, Carillier-Jacquin C, Gilbert H. Impact of a high-fibre diet on genetic parameters of production traits in growing pigs. Animal. 2020a, 14(11): 2236-2245. Cambridge University Press, 2020: 2236-2245.
49.Engblom L, Lundeheim N, Schneider M Del P, Dalin A-M, Andersson K. Genetics of crossbred sow longevity. Animal. 2009, 3(6): 783-790. Cambridge University Press, 2009: 783-790.
50.Erp RJJ Van, Vries S De, Kempen TATG Van, Hartog LAD, Gerrits WJJ. Feed intake patterns nor growth rates of pigs are affected by dietary resistant starch, despite marked differences in digestion. Animal. 2020, 14(7): 1402-1412. Cambridge University Press, 2020: 1402-1412.
51.Fugiglando U, Massaro E, Santi P, Milardo S, Abida K, Stahlmann R, Netter F, Ratti C. Driving Behavior Analysis through CAN Bus Data in an Uncontrolled Environment. IEEE Transactions on Intelligent Transportation Systems. 2019, 20(2): 737-748.
52.Hall AD, Hill WG, Bampton PR, Webb AJ. Genetic and phenotypic parameter estimates for feeding pattern and performance test traits in pigs. Animal Science. 1999, 68(1): 43-48. Cambridge University Press, 1999: 43-48.
53.He Y, Tiezzi F, Howard J, Maltecca C. Predicting body weight in growing pigs from feeding behavior data using machine learning algorithms. Computers and Electronics in Agriculture. 2021, 184: 106085.
54.Herrera-Caceres W, Ragab M, Sanchez JP. Indirect genetic effects on the relationships between production and feeding behaviour traits in growing Duroc pigs. Animal. 2020, 14(2): 233-242.
55.Honeck A, Ahlhorn J, Burfeind O, Gertz M, Beilage E Grosse, Hasler M, Tolle K, Visscher C, Krieter J. Influence on tail-biting in weaning pigs of crude fibre content and different crude fibre components in pigs' rations. The Journal of Agricultural Science. 2020, 158(3): 233-240. Cambridge University Press, 2020: 233-240.
56.Hoy S, Schamun S, Weirich C. Investigations on feed intake and social behaviour of fattening pigs fed at an electronic feeding station. Applied Animal Behaviour Science. 2012, 139(1-2): 58-64.
57.Hu D, Hou D, Guo K, Sun C. Design and implementation of Diagnostic system for Integrated body Controller Based on CAN bus//2019 Chinese Automation Congress (CAC). Hangzhou, China: IEEE, 2019: 1175-1178.
58.Jensen MB, Herskin MS, Canibe N, Forkman B, Pedersen LJ. Effect of straw amount on feed intake and weight gain in growing pigs housed in pens with partly slatted floor. Animal. 2020, 14(8): 1659-1666. Cambridge University Press, 2020: 1659-1666.
59.Lee G, Kim M, Koroki K, Ishimoto A, Sakamoto SH, Ieiri S. Wireless IC Tag Based Monitoring System for Individual Pigs in Pig Farm//2019 IEEE 1st Global Conference on Life Sciences and Technologies (LifeTech). Osaka, Japan: IEEE, 2019: 168-170.
60.Li J, Chen M, Chen Z, Shen M, Shu M. Design and Implementation of CAN Bus Realtime Monitor Based on Cigarette Set Based on Computer-aided Technology. Journal of Physics: Conference Series. 2020, 1648(2): 022188.
61.Liu K, Lee JYB. On Improving TCP Performance over Mobile Data Networks. IEEE Transactions on Mobile Computing. 2016, 15(10): 2522-2536.
62.Liu X, Shan L, Chen H, Li J. The application of the improved UDP based on the extrapolation algorithm in the network servo system//2016 IEEE International Conference on Information and Automation (ICIA). Ningbo, China: IEEE, 2016: 1913-1918.
63.Lu D, Jiao S, Tiezzi F, Knauer M, Huang Y, Gray KA, Maltecca C. The relationship between different measures of feed efficiency and feeding behavior traits in Duroc pigs1. Journal of Animal Science. 2017, 95(8): 3370-3380.
64.Lysenko AI, Chumachenko SN, Valuiskyi SV. Technology for environmental monitoring using wireless sensor networks//2014 24th International Crimean Conference Microwave & Telecommunication Technology. Sevastopol, Ukraine: IEEE, 2014: 251-252.
65.Ma Y. Design of Coal Mine Power Grid Parameter Monitoring System Based on CAN Bus. IOP Conference Series: Earth and Environmental Science. 2021, 651(3): 032009.
66.Macciotta NPP, Dimauro C, Bacciu N, Fresi P, Cappio-Borlino A. Use of a partial leastsquares regression model to predict test day of milk, fat and protein yields in dairy goats. Animal Science. 2006, 82(4): 463-468. Cambridge University Press, 2006: 463468.
67.Maselyne J, Adriaens I, Huybrechts T, Ketelaere BD, Millet S, Vangeyte J, Nuffel AV, Saeys W. Measuring the drinking behaviour of individual pigs housed in group using radio frequency identification (RFID). Animal. 2016, 10(9): 1557-1566. Cambridge University Press, 2016: 1557-1566.
68.Matallah H, Belalem G, Bouamrane K. Comparative Study Between the MySQL Relational Database and the MongoDB NoSQL Database: International Journal of Software Science and Computational Intelligence. 2021, 13(3): 38-63.
69.Meunier-Salaun MC, Guerin C, Billon Y, Sellier P, Noblet J, Gilbert H. Divergent selection for residual feed intake in group-housed growing pigs: characteristics of physical and behavioural activity according to line and sex. Animal. 2014, 8(11): 18981906. Cambridge University Press, 2014: 1898-1906.
70.Merks JWM, Mathur PK, Knol EF. New phenotypes for new breeding goals in pigs. Animal. 2012, 6(4): 535-543.
71.Mu Z. Fruit Online Chain Sales System Based on B/S//2019 International Conference on Robots & Intelligent System (ICRIS). Haikou, China: IEEE, 2019b: 238-241.
72.Murase K, Kato K. Near-IR material discrimination method by using multidimensional response variables PLS regression analysis//2018 International Workshop on Advanced Image Technology (IWAIT). Chiang Mai: IEEE, 2018: 1-4.
73.Piles M, Mart^ J, Reixach J, Sanchez JP. Genetic parameters of sow feed efficiency during lactation and its underlying traits in a Duroc population. Animal. 2020, 14(5): 889-898. Cambridge University Press, 2020: 889-898.
74.Quemeneur K, Montagne L, Gall ML, Lechevestrier Y, Labussiere E. Relation between feeding behaviour and energy metabolism in pigs fed diets enriched in dietary fibre and wheat aleurone. Animal. 2020, 14(3): 508-519. Cambridge University Press, 2020: 508-519.
75.Ragab M, Piles M, Quintanilla R, Sanchez JP. Indirect genetic effect model using feeding behaviour traits to define the degree of interaction between mates: an implementation in pigs growth rate. Animal. 2019, 13(2): 231-239.
76.Ratanpaul V, Williams BA, Black JL, Gidley MJ. Review: Effects of fibre, grain starch digestion rate and the ileal brake on voluntary feed intake in pigs. Animal. 2019, 13(11): 2745-2754. Cambridge University Press, 2019: 2745-2754.
77.Scheffler K, Stamer E, Traulsen I, Krieter J. Estimation of genetic parameters for agonistic behaviour of pigs at different ages. The Journal of Agricultural Science. 2016, 154(4): 732-741. Cambridge University Press, 2016: 732-741.
78.Shen J, Wang H, Meng Z, Huo P. Management information system design of safecoalproduction based on C/S and B/S//2010 2nd IEEE International Conference on Information Management and Engineering. Chengdu, China: IEEE, 2010: 305-308.
79.Shijun Z. Development and Forecast Analysis of English Network Teaching Aid Platform under B/S Technology Framework//2020 12th International Conference on Measuring Technology and Mechatronics Automation (ICMTMA). Phuket, Thailand: IEEE, 2020: 68-71.
80.Shortall J, Foley C, Sleator RD, O'Brien B. The effect of concentrate supplementation on milk production and cow traffic in early and late lactation in a pasture-based automatic milking system. Animal. 2018, 12(4): 853-863. Cambridge University Press, 2018: 853-863.
81.Silva EF, Lopes MS, Lopes PS, Gasparino E. A genome-wide association study for feed efficiency-related traits in a crossbred pig population. Animal. 2019, 13(11): 2447-2456. Cambridge University Press, 2019: 2447-2456.
82.Solapurkar P. Building secure healthcare services using OAuth 2.0 and JSON web token in IOT cloud scenario//2016 2nd International Conference on Contemporary Computing and Informatics (IC3I).
83.Souza Da Silva C, Haenen D, Koopmans SJ, Hooiveld GJEJ, Bosch G, Bolhuis JE, Kemp B, Muller M, Gerrits WJJ. Effects of resistant starch on behaviour, satiety- related hormones and metabolites in growing pigs. Animal. 2014, 8(9): 1402-1411.
84.Suherman S, Fahmi F, Al-Akaidi M, Al-Khowarizmi. UDP Checksum Field Usage for Sensor Data. IOP Conference Series: Materials Science and Engineering. 2020, 1003(1): 012086.
85.Stygar AH, Dolecheck KA, Kristensen AR. Analyses of body weight patterns in growing pigs: a new view on body weight in pigs for frequent monitoring. Animal. 2018, 12(2): 295-302. Cambridge University Press, 2018: 295-302.
86.Wang C, Hu J, Wen C. A nonlinear PLS modeling method based on extreme learning machine//2015 34th Chinese Control Conference (CCC). Hangzhou, China: IEEE, 2015: 3507-3511.
87.Wang J, Liu P, Wang C. Design of enterprise informatization management system based on B/S mode//2014 IEEE Workshop on Advanced Research and Technology in Industry Applications (WARTIA). Ottawa, ON: IEEE, 2014: 697—698.
88.Wu J, Li Y-B, Li J, Li Y-D, Yu H-Y, Song L-M. CAN bus of automotive driving force control system based on SAE protocol J1939. 2009, 39: 855—85 8.
89.Zhang Y, Zhang L. A modified PLS regression model for quality prediction//Proceeding of the 11th World Congress on Intelligent Control and Automation. Shenyang, China: IEEE, 2014: 1383—1387.
90.Zhu W, Zhong F, Li X. Automated Monitoring System of Pig Behavior Based on RFID and ARM-LINUX//2010 Third International Symposium on Intelligent Information Technology and Security Informatics. Jian, China: IEEE, 2010: 431-434.