2017-04-05 126 views
-1

我一直在研究項目圖形噴泉。現在我被困在如何調用Visual Studio可以從twincat 3.有人可以幫忙嗎?在我可以重新開始之前,確實需要一些解釋。謝謝你。是否可以從twincat 3調用Visual Studio變量? (編程語言:C#)

最好的問候,托馬斯

+0

你是什麼意思的'調用C#變量'?你試圖訪問一個變量或調用一個函數? – zmbq

+0

如果我的問題很混亂,我很抱歉。我正在嘗試的是訪問我在Visual Studio中創建的變量,並且使用的基本編程語言是C#。 最好的問候,托馬斯 –

+3

「訪問我在Visual Studio中創建的變量」。 AFAIK變量不存在於「Visual Studio中」,它們存在於您的代碼中。您最初編寫代碼的IDE通常與其他程序是否可用無關。你可以發佈一些代碼作爲你有什麼/你想達到什麼樣的例子嗎? – ADyson

回答

1

使用TwinCAT,你需要從你的.NET應用程序把你的「命令」變量的狀態,你PLC,你可以使用Beckhoff公司的ADS庫做。

如何做到這一點的一些例子可以在這裏找到: https://infosys.beckhoff.com/english.php?content=../content/1033/tc3_adssamples_net/html/tcsample_net_intro.htm&id=8269274592628480035

我找到了最好的實踐方式做到這一點是寫變量到PLC。如果它是一個按鈕按下,我一旦註冊了該按鈕,PLC就會覆蓋該變量(本地)。如果您正在編寫流程變量,我通常會以輪詢方式單獨回讀變量以在UI中顯示值。總之 - 我不保留UI中的變量的本地狀態,我依靠來自PLC的反饋來確保它始終處於最新狀態。

0

在你的PLC代碼中你將會有一些變量。這些變量可以從任何允許使用OCX,DLL或Beckhoff提供的其他機制的程序訪問。

您在錯誤地思考它,您不會在C#程序中編寫變量。 C#程序必須讀取TWinCAT中的變量。

有不同的方法:輪詢每個特定的毫秒數。 (最簡單的),或者一旦變化就試圖達到價值。

在任何情況下,我都會推薦您閱讀您可以在TWinCAT幫助系統中找到的ADS文檔,並查看可幫助您實現該功能的示例。

希望這會有所幫助!

相關問題