|
Quick steps to install TAS-HMITalk |
|
By CPKSoft Engineering Support on
11/22/2008 6:34 PM
|
To install TAS-HMITalk in your machine follow these steps:
- Download the TAS-HMITalk distribution .zip file from http://www.cpksoft.com.
- Extract the .zip file contents to a local folder.
- Locate the hmitalk.ocx file, right-click over it and select "Open with...".
- Browse to 'C:\Windows\System32' and select 'regsvr32.exe' and Accept.
- The ocx file should now be registered by Windows in your machine.
- Repeat the same steps with linechrt.ocx and grid32.ocx.
- Now you can add TAS-HMITalk to your Visual Basic toolbox and/or open the examples.
|
|
Comments (0)
|
|
|
|
|
New TriggerAndWait method |
|
By CPKSoft Engineering Support on
10/2/2008 6:46 PM
|
A new method called TriggerAndWait has been added to the TAS-HMITalk activex. This method triggers a new communication and then blocks the execution of the application thread until the communication has finished. This way it is easier to implement a communication strategy where several TAS-HMITalk objects must be cascaded in a particular order.
Following is an example of a routine to handle a button event in an application written in C# with Visual Studio 2005 that reads data from a relay:
private void button1_Click(object sender, EventArgs e)
{
|
|
Comments (0)
|
|
|
|
|
|
How can I get connected to my devices with TAS-HMITalk? |
|
By CPKSoft Engineering Support on
7/21/2008 7:23 PM
|
TAS-HMITalk and any of its drivers can be used in any of the following configurations, with direct RS-232 connections, connections through RS-232/485 converters, connections through ethernet/serial converters, connections through virtual serial ports, etc.:

|
|
Comments (0)
|
|
|
|
|
MOXA Serial-to-Ethernet NPort 6150 module tested wiith TAS-HMITalk |
|
By CPKSoft Engineering Support on
6/1/2008 6:06 PM
|
Last week we had the chance to test the Moxa NPort 6150 Secure Serial Port Server Module with TAS-HMITalk to communicate with the serial port of a DanLoad 6000 electronic preset through the ethernet LAN at a fertilizer plant from Petrobras in Campana, Argentina.

The Moxa device was provided by RCL Systems, a company specialized in integrating InTouch factory suite applications for oil&gas industries.
The loopback tests worked great, showing that TAS-HMITalk could talk to the MOXA module directly, without the need of installing any COM port redirector software. TAS-HMITalk could properly recover from our intentionally-caused communication errors, such as cable disconnections and module power-off and on.
The DanLoad 6000 didn ...
Read More »
|
|
Comments (0)
|
|
|
|
|
Comments about sending outputs |
|
By CPKSoft Engineering Support on
5/26/2008 8:59 PM
|
- Configure your HMITalk object properties according to what the driver help file says for the chosen driver and command. Leave default values for properties not mentioned in the help file.
- Leave the ScanActive=False and uncheck the ScanAutoTrigger property.
- Create a Button to send the data
- In the Button_Click event, place this code:
HMITalkxxx.PointValue(0) = <the value to be sent>
HMITalkxxx.Trigger ' To dispatch the writing action
- Then just listen to the OnSuccessfullySent event or the OnErrorSending event.
|
|
Comments (0)
|
|
|
|
|
Example configuring a Modbus RTU communication |
|
By CPKSoft Engineering Support on
5/26/2008 8:50 PM
|
All drivers are configured using the same set of properties DriverP0 to DriverP9 and the meaning of these properties changes from one driver to other.
For example, to read a register value at address D0000 from a device supporting Modbus RTU, you should configure one TAS-HMITalk object as follows:
DriverName = “XModbusb”
DriverDataType = Analog_Input (because you will be reading words this time)
DriverNumPoints = 1 or whatever number ob registers you want to read (up to 125)
DriverP0 = PLC station number (project1.exe uses 1, which seemed to work OK)
DriverP1 = 3 or 4, depending on what your PLC supports.
DriverP2 = the starting address to be read (32768 for D0000)
DriverP3 to DriverP9 are not used for this case.
If you want the HMITalk object to periodically read your device, you don't need to call the .Trigger method each time. Y ...
Read More »
|
|
Comments (0)
|
|
|
|
|
Periodic reading vs. On-demand reading |
|
By CPKSoft Engineering Support on
5/26/2008 8:38 PM
|
The best approach to read data on a periodic basis is:
- Set the ScanActive to True
- Let the OnSuccessfullyReceived event or the OnPointValueChanged events do the work for you.
The best approach for on-demand reading is:
- Call the Trigger method
- Again, let the OnSuccessfullyReceived event or the OnPointValueChanged events do the work for you.
|
|
Comments (0)
|
|
|
|
|
Comments about configuring a PID loop |
|
By CPKSoft Engineering Support on
5/26/2008 8:33 PM
|
- To build a closed PID loop, you will need two TAS objects. One to read the process variable and the other to send the control signal back to the plant.
- Only the TAS object that is reading the process variable needs to have its PID properties set. The TAS object which sends the output is configured as you do with any other normal TAS object.
- The EnablePIDs TAS general property must be True for PIDs to operate.
- You will need to devote one PointValue for each PID loop you need.
- The PointPIDEnable property of that point must be set to True
- As a minimun, the PointPIDSetpoint, PointPIDKp, PointPIDKi and PointPIDKd must be set to appropriate values.
- The PointPIDLowPhysic and PointPIDHighPhysic properties will scale the control signal between 0% and 100%.
- The value of the control signal generated by the PID algor ...
Read More »
|
|
Comments (0)
|
|
|
|
|
Understanding how the CommTimeout property works |
|
By CPKSoft Engineering Support on
5/26/2008 8:27 PM
|
The "timeout threshold", the "CommTimeout property" or the "timeout value", which are all the same thing, is an amount of time that you configure and that the driver uses to know when it is time to abandon a communication if no response was received. If a timeout value is too big, an HMITalk object could remain waiting for an answer for a long time. The only reason a timeout exists is to prevent the driver to stay waiting forever. So it is important to define how long you want to wait in order to be sure that the device will not respond anyway after that time.
The timeout is a software setting at the driver side and it does not affect the device behaviour, but the driver behaviour. It does have nothing to do with some physical or electrical thing. It is just a maximum time period and the driver checks what happens first: a reply arrival or the timeout period expiration.
A timeout cannot be too short either. If you set a timeout to ...
Read More »
|
|
Comments (0)
|
|
|
|