本技術(shù)涉及控制器識(shí)別的,尤其是涉及一種單行控制器身份的自動(dòng)識(shí)別方法、裝置、設(shè)備及介質(zhì)。
背景技術(shù):
1、在自動(dòng)化控制系統(tǒng)領(lǐng)域,圖像識(shí)別技術(shù)和電子設(shè)備控制系統(tǒng)領(lǐng)域,單行控制器是一種常見的設(shè)備,主要用于對設(shè)備進(jìn)行單個(gè)控制。單行控制器通常需要通過特定的引腳進(jìn)行輸入和輸出,以便于進(jìn)行信號(hào)傳輸和控制。在實(shí)際應(yīng)用中,單行控制器需要能夠自動(dòng)識(shí)別自己在整個(gè)系統(tǒng)中的位置,以便于進(jìn)行正確的控制。
2、在現(xiàn)有的技術(shù)中,一種常見的解決方案是通過硬件方式來實(shí)現(xiàn)單行控制器序號(hào)的自動(dòng)識(shí)別。例如,可以通過設(shè)置每個(gè)單行控制器的硬件地址,然后通過讀取硬件地址來識(shí)別單行控制器的位置。
3、然而,現(xiàn)有的技術(shù)在實(shí)際應(yīng)用中存在一些問題。首先,硬件方式實(shí)現(xiàn)單行控制器序號(hào)的自動(dòng)識(shí)別,需要額外的硬件成本,而且硬件地址的設(shè)置和讀取需要專門的硬件電路,這增加了系統(tǒng)的復(fù)雜性和成本。此外,通過硬件方式在處理大量單行控制器序號(hào)的自動(dòng)識(shí)別時(shí),效率都比較低,限制了單行控制器在大規(guī)模系統(tǒng)中的應(yīng)用。
技術(shù)實(shí)現(xiàn)思路
1、為了降低了單行控制器序號(hào)的自動(dòng)識(shí)別的復(fù)雜性和成本,提高自動(dòng)識(shí)別大量單行控制器的的效率,本技術(shù)提供一種單行控制器身份的自動(dòng)識(shí)別方法、裝置、設(shè)備及介質(zhì)。
2、第一方面,本技術(shù)提供一種單行控制器身份的自動(dòng)識(shí)別方法,包括:
3、判斷當(dāng)前單行控制器的當(dāng)前身份標(biāo)識(shí)是否為首臺(tái)單行控制器對應(yīng)的身份標(biāo)識(shí);
4、若所述當(dāng)前身份標(biāo)識(shí)不是首臺(tái)單行控制器對應(yīng)的身份標(biāo)識(shí),則基于所述當(dāng)前單行控制器預(yù)留的輸入引腳,接收上一單行控制器發(fā)送的模擬串口數(shù)據(jù),所述上一單行控制器中預(yù)留的輸出引腳與所述當(dāng)前單行控制器的輸入引腳通信連接,所述模擬串口數(shù)據(jù)為包含所述上一單行控制器的身份標(biāo)識(shí)的數(shù)據(jù);
5、基于所述模擬串口數(shù)據(jù),獲取所述當(dāng)前身份標(biāo)識(shí);
6、基于所述當(dāng)前身份標(biāo)識(shí),生成新的模擬串口數(shù)據(jù);
7、基于所述當(dāng)前單行控制器預(yù)留的輸出引腳,發(fā)送所述新的模擬串口數(shù)據(jù)至下一單行控制器,所述下一單行控制器中預(yù)留的輸入引腳與所述當(dāng)前單行控制器的輸出引腳通信連接。
8、本技術(shù)的有益效果為:單行控制器規(guī)定兩個(gè)引腳分別作為輸入引腳和輸出引腳,各臺(tái)單行控制器采用手拉手的方式連接,用于傳輸包含身份標(biāo)識(shí)的模擬串口數(shù)據(jù),從而可以在不增加硬件成本的前提下,實(shí)現(xiàn)各臺(tái)單行控制器序號(hào)的自動(dòng)識(shí)別,降低了系統(tǒng)的復(fù)雜性和成本,提高了處理大量單行控制器的自動(dòng)識(shí)別的效率,適用于低成本或者小型的單行控制器。
9、進(jìn)一步,所述判斷當(dāng)前單行控制器的當(dāng)前身份標(biāo)識(shí)是否為首臺(tái)單行控制器對應(yīng)的身份標(biāo)識(shí),包括:
10、若預(yù)留的所述輸入引腳檢測到低電平,則開啟定時(shí)器,記錄所述低電平的保持時(shí)間;
11、若所述低電平的保持時(shí)間超過預(yù)設(shè)的第一時(shí)間閾值,則判斷所述當(dāng)前身份標(biāo)識(shí)為所述首臺(tái)控制器對應(yīng)的身份標(biāo)識(shí)。
12、采用上述進(jìn)一步方案的有益效果是:通過簡單的電平信號(hào)來實(shí)現(xiàn)單行控制器的身份標(biāo)識(shí)的自動(dòng)識(shí)別,簡化了操作過程。
13、進(jìn)一步,在所述接收上一單行控制器發(fā)送的模擬串口數(shù)據(jù)之后,還包括:
14、對所述模擬串口數(shù)據(jù)進(jìn)行校驗(yàn),得到校驗(yàn)結(jié)果;
15、判斷所述模擬串口數(shù)據(jù)的校驗(yàn)結(jié)果是否為有效數(shù)據(jù),若所述模擬串口數(shù)據(jù)的校驗(yàn)結(jié)果為有效數(shù)據(jù),則執(zhí)行所述獲取所述當(dāng)前身份標(biāo)識(shí)的步驟;
16、若所述模擬串口數(shù)據(jù)校驗(yàn)的校驗(yàn)結(jié)果為無效數(shù)據(jù),則丟棄所述模擬串口數(shù)據(jù)。
17、采用上述進(jìn)一步方案的有益效果是:通過對模擬串口數(shù)據(jù)進(jìn)行校驗(yàn),判斷該模擬串口數(shù)據(jù)是否為有效數(shù)據(jù),能夠顯著提高模擬串口數(shù)據(jù)識(shí)別的可靠性,從而避免對錯(cuò)誤的模擬串口數(shù)據(jù)進(jìn)行不必要的處理,提高了各個(gè)單行控制器的身份標(biāo)識(shí)的識(shí)別效率和穩(wěn)定性。
18、進(jìn)一步,所述模擬串口數(shù)據(jù)包括起始位信息、數(shù)據(jù)位信息、校驗(yàn)位信息和停止位信息,所述判斷所述模擬串口數(shù)據(jù)的校驗(yàn)結(jié)果是否為有效數(shù)據(jù),包括:
19、若接收到所述停止位信息,則對所述數(shù)據(jù)位信息進(jìn)行校驗(yàn);
20、若所述數(shù)據(jù)位信息的校驗(yàn)結(jié)果與所述校驗(yàn)位信息一致,則判斷所述模擬串口數(shù)據(jù)的校驗(yàn)結(jié)果為有效數(shù)據(jù)。
21、采用上述進(jìn)一步方案的有益效果是:通過明確停止位信息作為數(shù)據(jù)傳輸完成的標(biāo)志,可以確保當(dāng)前單行控制器在完整接收到模擬串口數(shù)據(jù)之后再進(jìn)行校驗(yàn),從而降低了因模擬串口數(shù)據(jù)未完全接收而導(dǎo)致的校驗(yàn)錯(cuò)誤或數(shù)據(jù)丟失的可能性。通過對數(shù)據(jù)位信息進(jìn)行校驗(yàn),并將其結(jié)果與校驗(yàn)位信息進(jìn)行比對,可以有效地檢測出模擬串口數(shù)據(jù)在數(shù)據(jù)傳輸過程中是否發(fā)生了錯(cuò)誤,能夠更準(zhǔn)確地判斷模擬串口數(shù)據(jù)的有效性。
22、進(jìn)一步,在所述獲取所述當(dāng)前身份標(biāo)識(shí)之后,還包括:
23、獲取片外flash中保存的上一身份標(biāo)識(shí),所述上一身份標(biāo)識(shí)為上一次通電后識(shí)別到的該當(dāng)前單行控制器的身份標(biāo)識(shí);
24、若所述當(dāng)前身份標(biāo)識(shí)與所述上一身份標(biāo)識(shí)不一致,則將所述當(dāng)前身份標(biāo)識(shí)代替所述上一身份標(biāo)識(shí),并保存至所述片外flash。
25、采用上述進(jìn)一步方案的有益效果是:通過獲取并比較當(dāng)前身份標(biāo)識(shí)與片外flash中保存的上一身份標(biāo)識(shí),可以確保在單行控制器重啟或重置后,單行控制器能夠基于片外flash恢復(fù)到上一次識(shí)別的身份標(biāo)識(shí)。通過將當(dāng)前身份標(biāo)識(shí)更新并保存到flash中,提高了單行控制器的容錯(cuò)能力。
26、進(jìn)一步,在所述將所述當(dāng)前身份標(biāo)識(shí)代替所述上一身份標(biāo)識(shí),并保存至所述片外flash之后,還包括:
27、若下一模擬串口數(shù)據(jù)接收失敗,則停止接收模擬串口數(shù)據(jù),并將所述片外flash中保存的所述當(dāng)前身份標(biāo)識(shí)重新作為所述當(dāng)前單行控制器的身份標(biāo)識(shí);
28、基于所述當(dāng)前身份標(biāo)識(shí),接收can總線發(fā)送的報(bào)文。
29、采用上述進(jìn)一步方案的有益效果是:保障了各臺(tái)單行控制器能夠分配合理的自身序號(hào),且不會(huì)在can總線中存在沖突,降低了下一模擬串口數(shù)據(jù)接收失敗的影響。
30、進(jìn)一步,在所述獲取所述當(dāng)前身份標(biāo)識(shí)之后,還包括:
31、若所述當(dāng)前單行控制器的所述當(dāng)前自身序號(hào)為最后一臺(tái)單行控制器對應(yīng)的自身序號(hào),則自動(dòng)識(shí)別結(jié)束;
32、若所述當(dāng)前單行控制器的所述當(dāng)前自身序號(hào)不是最后一臺(tái)單行控制器對應(yīng)的自身序號(hào),則執(zhí)行所述基于所述當(dāng)前身份標(biāo)識(shí),生成新的模擬串口數(shù)據(jù)的步驟。
33、采用上述進(jìn)一步方案的有益效果是:通過自動(dòng)識(shí)別當(dāng)前單行控制器的身份標(biāo)識(shí)是否為最后一臺(tái),能夠智能地決定是否結(jié)束識(shí)別流程,以及全部的單行控制器的身份標(biāo)識(shí)是否均自動(dòng)識(shí)別完成,減少了人工干預(yù)的需要,提高了單行控制器身份標(biāo)識(shí)識(shí)別的自動(dòng)化程度和運(yùn)行效率。當(dāng)有新的單行控制器加入時(shí),只需確保新的單行控制器能夠正確地識(shí)別身份標(biāo)識(shí),并按照流程生成模擬串口數(shù)據(jù),就能夠自動(dòng)地將新的單行控制器納入管理范圍,而無需進(jìn)行大規(guī)模的修改或重新配置。
34、第二方面,本技術(shù)提供一種單行控制器身份的自動(dòng)識(shí)別裝置,包括:
35、判斷模塊,用于判斷當(dāng)前單行控制器的當(dāng)前身份標(biāo)識(shí)是否為首臺(tái)單行控制器對應(yīng)的身份標(biāo)識(shí);若所述當(dāng)前身份標(biāo)識(shí)不是首臺(tái)單行控制器對應(yīng)的身份標(biāo)識(shí),則轉(zhuǎn)入第一接收模塊;
36、所述第一接收模塊,用于基于所述當(dāng)前單行控制器預(yù)留的輸入引腳,接收上一單行控制器發(fā)送的模擬串口數(shù)據(jù),所述上一單行控制器中預(yù)留的輸出引腳與所述當(dāng)前單行控制器的輸入引腳通信連接,所述模擬串口數(shù)據(jù)為包含所述上一單行控制器的身份標(biāo)識(shí)的數(shù)據(jù);
37、第一獲取模塊,用于基于所述模擬串口數(shù)據(jù),獲取所述當(dāng)前身份標(biāo)識(shí);
38、生成模塊,用于基于所述當(dāng)前身份標(biāo)識(shí),生成新的模擬串口數(shù)據(jù);
39、發(fā)送模塊,用于基于所述當(dāng)前單行控制器預(yù)留的輸出引腳,發(fā)送所述新的模擬串口數(shù)據(jù)至下一單行控制器,所述下一單行控制器中預(yù)留的輸入引腳與所述當(dāng)前單行控制器的輸出引腳通信連接。
40、第三方面,本技術(shù)提供一種電子設(shè)備,包括處理器和存儲(chǔ)器,所述處理器與所述存儲(chǔ)器耦合;
41、所述處理器用于執(zhí)行所述存儲(chǔ)器中存儲(chǔ)的計(jì)算機(jī)程序,以使得所述電子設(shè)備執(zhí)行如第一方面任一項(xiàng)所述的方法。
42、第四方面,本技術(shù)提供一種計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),包括計(jì)算機(jī)程序或指令,當(dāng)所述計(jì)算機(jī)程序或指令在計(jì)算機(jī)上運(yùn)行時(shí),使得所述計(jì)算機(jī)執(zhí)行如第一方面任一項(xiàng)所述的方法。