Difference between revisions of "softMC as OPC UA Server"

From SoftMC-Wiki
Jump to: navigation, search
Line 8: Line 8:
 
*Load it from the '''config.prg''', see below  
 
*Load it from the '''config.prg''', see below  
 
*Exctute it from '''autoexec.prg''', see below  
 
*Exctute it from '''autoexec.prg''', see below  
 +
  
 
= '''CONFIG.PRG''' =
 
= '''CONFIG.PRG''' =
  
 
program
 
program
 +
<syntaxhighlight lang="vb">
  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Print "system is running&nbsp; -&nbsp; "
+
Print "system is running"
 
 
&nbsp;&nbsp;&nbsp; Sys.DoubleFormat = 1
 
  
&nbsp;&nbsp;&nbsp;'''Load opc_ua.lib'''
+
Sys.DoubleFormat = 1
 +
 
 +
Load opc_ua.lib
  
&nbsp;end program
+
end program
  
&nbsp;
+
</syntaxhighlight>
  
 
= '''AUTOEXEC.PRG''' =
 
= '''AUTOEXEC.PRG''' =

Revision as of 09:13, 14 January 2019

RTENOTITLE

To enable softMC OPC UA you need:

  • Install ipk or rpm with OPC UA to your softMC controller, if you do not have the file contact servotronix support
  • Copy OPC_UA.LIB file to your softMC controller , if you do not have the file contact servotronix support
  • Load it from the config.prg, see below
  • Exctute it from autoexec.prg, see below


CONFIG.PRG

program

Print "system is running"

Sys.DoubleFormat = 1
 
Load opc_ua.lib

end program

AUTOEXEC.PRG

Program Continue

dim x as long

Load startprg.prg

while startprg.prg.state <> 10

    sleep 500

end while

..

Load IND4.prg

StartTask IND4.prg

x =stop_start_server ; restart OPC UA server

End Program

 

Example for servo drive Temperature and power mesurment

IND4.PRG

common shared A1_PWRTEMP as long

common shared A1_POWER  as long

common shared A1_Cycle as long

common shared A2_PWRTEMP as long

common shared A2_POWER  as long

common shared A2_Cycle as long

 

program

A1_Cycle = 2

A2_Cycle = 4

while 1

 A1_PWRTEMP=ec_sdo_read(a1.dadd,0x2044,2)

 A1_POWER = abs(a1.TFb) * abs(a1.vfb) / 1000

 A2_PWRTEMP=ec_sdo_read(a2.dadd,0x2044,2)

 A2_POWER = a2.TFb * a2.vfb / 1000

 sleep 10

end while

end program