解決方案
錯誤5003表示LabVIEW已失去與Arduino的連接。 VI與Arduino通訊時斷開USB或串行電纜的連接或使用Xbee或藍牙等無線連接時無線訊號強度差導致連接失敗。
實際上,當LabVIEW在預定的時間內無法從Arduino讀取數據時(默認情況下,每次重試10次,每次嘗試100毫秒),就會發生超時。
請按照以下疑難解答步驟解決問題:
- 如果使用有線連接,請確保所有電纜都已牢固連接,或者如果使用無線連接,請確保具有足夠的訊號強度。桌機背面的USB端口通常比前面板的USB端口具有更穩定的電源。如果您在使用桌機,則需要使用這些端口。如果您使用的是筆記型電腦,請確保在故障排除過程中已將其插入。
- 檢查並確保為Arduino板指定了正確的鮑率和COM端口,以便正確定義通訊協議。未指定正確的設置可能會導致此錯誤。
- 使用LabVIEW界面的Arduino(LIFA)工具包的每個程式都應以
Init
命令開頭,以Close
命令結尾。確保盡可能避免使用LabVIEW的Abort(
中止)
按鈕。中止任務時,您的程式碼將沒有機會運行Close
VI。下次您運行程式碼時,Arduino將以未知狀態啟動,可能會導致錯誤5003 。您可能需要重新啟動電路板並重新加載LIFA韌體才能更正此問題。 - 確保沒有其他打開的程式也試圖與Arduino通訊。例如,打開Arduino集成開發環境(IDE)可能會保留Arduino資源,從而導致LabVIEW嘗試存取COM端口時出現錯誤5003 。
- 您可以嘗試打開一個與相同的I/O引腳溝通的内建範例程式,以查看是否仍然出現錯誤5003 。這將確保Arduino實際上能夠與您的電腦通訊。
- 您可以通過修改“Send Receive”功能的“Time Out”和“Max Retries”輸入終端來手動更改超時時間或重試次數。超時值較長或嘗試(重試)次數較多時,可能會與設備建立通訊。