大量可編程控制器應用/固件升級方法
【技術(shù)領域】
[0001]本發(fā)明一般地涉及一種可編程控制器PLC應用程序/固件升級方法。更具體地,涉及一種對網(wǎng)絡中的大量可編程控制器進行應用/固件升級的方法。
【背景技術(shù)】
[0002]在聚光太陽能發(fā)電(Concentrating Solar Power CSP)的項目中,通常使用數(shù)千個PLC進行控制。在目前的CSP項目的體系結(jié)構(gòu)中,通過運行在工程師站的后備工具來對PLC中的應用程序和固件進行升級。后備工具逐個地對PLC的應用程序和固件進行升級。因此,如果存在大量PLC需要升級時,則會耗費大量時間。
[0003]根據(jù)客戶的反饋,對1000片PLC進行應用程序升級大約需要4小時。而對于某些CSP項目,會使用超過4000片的PLC,則需要16小時來升級應用程序,對于客戶而言,這耗費了太多的時間。對客戶而言是一種難以容忍的過程。
[0004]基于此,急待一種能夠快速地對網(wǎng)絡中的大量可編程控制器進行應用程序/固件升級的方法。本發(fā)明正是基于此而做出的。
【發(fā)明內(nèi)容】
[0005]本發(fā)明的目的就是減少網(wǎng)絡中的大量可編程控制器進行應用程序/固件升級時所花費的時間。
[0006]根據(jù)本發(fā)明的一方面,提供了一種對網(wǎng)絡中的大量可編程控制器的應用程序/固件進行升級的方法,包括:將整個網(wǎng)絡分為一定數(shù)量的子網(wǎng),在位于同一子網(wǎng)的PLC中選擇具有最值IP地址的PLC,具有最值IP的PLC負責掃描該子網(wǎng),并為在該子網(wǎng)中連接的需要升級應用程序/固件的所有PLC制作IP地址列表;掃描整個網(wǎng)絡,僅對各子網(wǎng)中的具有最值IP地址的PLC進行升級;在各個子網(wǎng)中,已升級的具有最值IP地址的PLC將從其所屬子網(wǎng)中需要升級應用程序/固件的PLC的IP地址列表中選取一個PLC的IP地址,具有最值IP地址的PLC對所選取的PLC進行升級;從需要升級應用程序/固件的PLC地址列表中刪除所選取的PLC的IP地址,并將該需要升級應用程序/固件的PLC地址列表中的地址平均分成兩部分,將其中的一部分PLC地址列表發(fā)給所選取的PLC,另一部分PLC地址列表仍保留在具有最值IP地址的PLC ;具有最值IP地址的PLC和所選取的PLC將根據(jù)各自的地址列表重復上述子網(wǎng)中的升級步驟,直到每個被分的PLC地址列表中沒有PLC地址為止。
[0007]其中最值IP地址是最小IP地址,在子網(wǎng)中選擇具有最值IP地址的PLC的步驟包括:在獲得IP地址之后PLC周期發(fā)送地址解析協(xié)議(APR)命令,并同時檢測其他PLC發(fā)出的APR命令;如果從APR命令中檢測到具有更小IP地址的PLC,則該PLC停止發(fā)送APR命令;如果該PLC持續(xù)一定時間沒有接收到更小的IP,則認為該PLC是具有最小IP的PLC ;具有最小IP的PLC持續(xù)地周期發(fā)送APR命令,如果在該子網(wǎng)中有新的PLC接入,則重新開始最小IP的PLC選擇過程。
[0008]其中,最值IP地址是最大IP地址,在子網(wǎng)中選擇具有最值IP地址的PLC的步驟包括:在獲得IP地址之后PLC周期發(fā)送地址解析協(xié)議(APR)命令,并同時檢測其他PLC發(fā)出的APR命令;如果從APR命令中檢測到具有更大IP地址的PLC,則該PLC停止發(fā)送APR命令;如果該PLC持續(xù)一定時間沒有接收到更大的IP,則認為該PLC是具有最大IP的PLC ;具有最大IP的PLC持續(xù)地周期發(fā)送APR命令,如果在該子網(wǎng)中有新的PLC接入,則重新開始最大IP的PLC選擇過程。
[0009]其中,客戶使用后備工具掃描整個網(wǎng)絡。
【附圖說明】
[0010]通過以下僅作為示例的并且結(jié)合附圖的所寫描述,對于本領域一位技術(shù)人員來說,本發(fā)明的示例實施例將更好理解并且更明顯,附圖中:
[0011]圖1示出了根據(jù)本發(fā)明的PLC的應用程序/固件升級方法中的PLC IP地址劃分的第一不意圖。
[0012]圖2示出了根據(jù)本發(fā)明的PLC的應用程序/固件升級方法中的PLC IP地址劃分的第二示意圖。以及
[0013]圖3根據(jù)本發(fā)明的PLC的應用程序/固件升級方法中的PLC IP地址劃分的第三示意圖。
【具體實施方式】
[0014]在本發(fā)明的構(gòu)思中,網(wǎng)絡中的已經(jīng)進行了應用程序/固件升級的PLC將對等待應用程序/固件升級的其他PLC進行升級。因此,根據(jù)本發(fā)明,需要每一個PLC具備對其他PLC進行應用程序/固件升級的能力。
[0015]根據(jù)本發(fā)明的PLC的應用/固件升級過程分為以下3個大步驟。
[0016]步驟1:PLC準備
[0017]在步驟I中,將整個網(wǎng)絡分為一定數(shù)量的子網(wǎng)。在位于相同子網(wǎng)的PLC中選擇具有最小IP (網(wǎng)際協(xié)議)地址的PLC。具有最小IP的PLC負責掃描該子網(wǎng),并為在該子網(wǎng)中連接的所有PLC制作IP地址列表。具體地,參見以下子步驟11-15。
[0018]子步驟11:在獲得IP地址之后PLC周期發(fā)送地址解析協(xié)議(APR)命令,并同時檢測其他PLC的APR命令。
[0019]子步驟12:如果從APR命令中檢測到具有更小IP地址的PLC,則該PLC停止發(fā)送APR命令。
[0020]子步驟13:如果該PLC持續(xù)一定時間(例如10秒)沒有接收到更小的IP,則認為該PLC是具有最小IP的PLC。
[0021]子步驟14:具有最小IP的PLC持續(xù)地周期發(fā)送APR命令。如果在該子網(wǎng)中有新的PLC接入,則返回到步驟11,重新開始最小IP的PLC選擇過程。
[0022]子步驟15:具有最小IP的PLC將掃描該子網(wǎng)中所有連接的PLC,制作IP地址列表。
[0023]步驟2:通過后備工具升級PLC
[0024]客戶使用后備工具掃描整個網(wǎng)絡,僅對各子網(wǎng)中的具有最小IP地址的PLC進行升級。
[0025]步驟3:在各子網(wǎng)內(nèi)升級PLC
[0026]為了方便說明,使用在同一子網(wǎng)中存在8個PLC的例子進行描述。在該例子中,IP地址為從 192.168.0.1 - 192.168.0.8。
[0027]首先,僅具有最小IP地址192.168.0.1的PLCl的應用已經(jīng)在上面的步驟2被升級,并且PLCl具有該子網(wǎng)中需要升級應用程序/固件的所有PLC的地址列表,即包括192.168.0.2 - 192.168.0.8。PLCl (192.168.0.1)將從該子網(wǎng)中需要升級應用程序/固件的所有PLC不特定地選取一個PLC,例如選取PLC2(192.168.0.2),并且PLC1