Register :: Login 
   
 July 29, 2010  
CPKSoft blogs Minimize
Nuestros blogs
Nuestros blogs
 
More links... Minimize
 
Your cart contents Your cart contents Minimize
Product Qty. Price
TOTAL: 0 0.00 USD
 
Popular products Minimize
See details... XMODBTCP Modbus TCP Protocol Drive...
See details... XMODBUSB Gould Modicon Modbu...
See details... XALSTOM Areva Alstom IEC 87...
See details... GetPCId.exe Utility for collecting...
See details... XELVIPD3 ElControl Energy VIPD3-485...
See details... XS7PPI Siemens S7-200 Advanced...
See details... XABF Allen Bradley Full Duplex...
See details... XADAM Advantech Adam Series...
See details... XDX9100 Johnson Controls Metasys...
See details... XNAIS NAIS Matsushita MEWTOCOL-COM...
See details... XCVENETA ClimaVeneta CVM300-3000...
See details... XGECALST Gec Alsthom Addressable...
See details... XCONDENS System Electric Condensomatic...
See details... XABSLC5 Allen Bradley SLC-500...
See details... XCATM5X Caterpillar CCM/M5X Protocol...
See details... XTEST Serial Line Testing Master...
See details... XHITACHH Hitachi PLC Serie H Protocol...
 
 Blogs   

CPKSoft Engineering offers the develop of applications to meet your needs for monitoring and remote control. We work in Visual Basic 6.0, Visual Basic.Net and Visual C#. Net and deliver the sources of our work. If you are not a developer and therefore you do not need an unlimited license of our ActiveX, we can provide you a runtime license for using the application included in the price of the implementation. The development may also include building new drivers or extensions of existing ones. Be sure to contact us if you have any query.

CPKSoft Engineering offers the develop of applications to meet your needs for monitoring and remote control. We work in Visual Basic 6.0, Visual Basic.Net and Visual C#. Net and deliver the sources of our work. If you are not a developer and therefore you do not need an unlimited license of our ActiveX, we can provide you a runtime license for using the application included in the price of the implementation. The development may also include building new drivers or extensions of existing ones. Be sure to contact us if you have any query.

Select a blog: Minimize
 
May 26

Written by: CPKSoft Engineering Support
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 1 millisecond, it will never be possible to send a message and receive a response within that short time. So the timeout will have to be set to a value longer than that. If you define the timeout to 60000 milliseconds, you will have to wait one minute before the driver discards the current request and is ready for the next request. A right value will be something between 1 and 60000 ms and the typical setting is 2000 ms, this is, 2 seconds.

The minimum value for a timeout should be at least the time it takes for a device to return a complete valid answer plus a few milliseconds. If a communication log file shows that a valid communication takes 60 ms to be completed (from tx to rx), then the timeout will have to be greater than that. If you set the timeout to a value smaller than 60, you will always receive a timeout error because the timeout period expiration will happen before the reply was received. In this case, the timeout should be at least of 120 ms, which is two times the time required to communicate when the device responds well. It must be greater because you must be tolerant to some unknown factors that could cause minimal delays and make the conversation time to fluctuate.
 
As an analogy, imagine when you make a phone call. How many rings do you wait until you say: "Ok, there is no body there, lets hang up". Do you wait for 50 rings?. Too much. specially if you have too many other calls to make. Do you wait for 1 ring and then you hang up?. Too short and probably you will never have the chance to speak to anybody. What we define with the CommTimeout property is "how many rings do we have to wait".If you know that the average person answers the phone at the 3rd or 4th ring, you will probably wait up to 6 rings before hanging up. You will not wait strictly for 3 rings because probably some times you will lose the call just when the other person was about to pick up the phone.

There is no problem to set a timeout that is longer or even much longer than the time actually involved in a valid communication. Continuing with the phone rings  analogy, think of HMITalk as a secretary who has many phone numbers to call. She starts calling one by one, and waits up to 6 rings for each phone to answer. She expects people to answer within the 3 first rings. If everybody answers within the 3 rings, she will never have to wait for the 6 rings. This shows that the timeout value is only the "maximum number of rings" that she will wait. But if everything is OK, this value is "never used" because that limit is never reached.

Now imagine that only some of the phone numbers that she has to call are not available. Sometimes they answer, sometimes not. What does she do when she attempts with those numbers?. Instead of going immediately to try with the next number, she might retry 2 or 3 times with each failed number. The person she was trying to reach could have been busy at that moment, so it is worth a retry. At the HMITalk level, this can be donde by configuring the ScanRetries property.
 
Now, how long would it take to this secretary to complete all the phone calls? Does it depend on her "finger dialing skills"?. Would you say that she is a "slow person" if she takes too much time to complete the cycle?. Is it her fault that nobody answers at random patterns to certain numbers in an unpredictable way?. What would you do? Change the secretary?. Increase the number of rings she waits for?. Or check why there are some numbers that are not responding as quickly as they should?. The problem is probably not on the secretary side. Focus on the adapter, the radio link, the noise conditions of your line, etc.

Tags:

Your name:
Title:
Comment:
Security Code
Enter the code shown above in the box below
Add Comment    Cancel  
Available licenses Minimize
See details and download trial...
399.00 USD
Unlimited license to build applications with Visual Basic that...
See more...
See details and download trial...
899.00 USD
Unlimited license to build applications with Visual Basic that...
See more...
See details and download trial...
1,399.00 USD
Unlimited license to build applications with Visual Basic that...
See more...
 
Available drivers Minimize
See details... XABF Allen Bradley Full Duplex...
See details... XABH Allen Bradley Half Duplex...
See details... XABSLC5 Allen Bradley SLC-500...
See details... XACROMAG Acromag Series 4600 I/O...
See details... XADAM Advantech Adam Series...
See details... XAFEISA Afeisa Industrial Microcomputers...
See details... XAIBUS Yudian AI-BUS Protocol...
See details... XALGODUE Algodue UPM Series Universal...
See details... XALSTOM Areva Alstom IEC 87...
See details... XAND4325 AND AD-4325V Weight Indicator...
See details... XARCOMA Arcom M1 Modbus Ascii...
See details... XARCOMB Arcom M1 Modbus RTU Protocol...
See details... XBCOLMAN Barber Colman model MAQ...
See details... XCAMMESA Driver for collecting...
See details... XCATM5X Caterpillar CCM/M5X Protocol...
See details... XCEWE Cewe Instruments Using...
See details... XCONDENS System Electric Condensomatic...
See details... XCOOPER Cooper Power System...
See details... XCORSAN IG Instrumentos CORSAN...
See details... XCVENETA ClimaVeneta CVM300-3000...
See details... XCVMBDM Circutor CVM-BD Memory...
See details... XCVMITF Circutor CVM-ITF/CVM-R8C...
See details... XCVMMEM Circutor CVM-M Memory...
See details... XCVMMOD Circutor CVM-BD-M Modbus...
See details... XCYBELEC Cybelec DNC-20 Protocol...
See details... XDANIELA Daniel Industries Devices...
See details... XDANLOAD Emerson Daniel DanLoad...
See details... XDLXVIP Algodue Elettronica DLX...
See details... XDUCATI Ducati Mach-Smart Analyzer...
See details... XDX9100 Johnson Controls Metasys...
See details... XELVIPD3 ElControl Energy VIPD3-485...
See details... XELVIPEN ElControl VIP Energ...
See details... XEXEMYS Exemys SSE232 Serial/Ethernet...
See details... XFOX760 Foxboro 760CNA/760CSA...
See details... XFOX761 Foxboro 761CNA/761CSA...
See details... XFOX762 Foxboro 762C/762CSA/743CB...
See details... XGATECIT Gatecit Additive Injectors...
See details... XGAVAZZI Carlo GAVAZZI Instruments...
See details... XGECALST Gec Alsthom Addressable...
See details... XGEFAN90 GE Fanuc Series 90 SNP-X...
See details... XGEMLINK General Electric M-LINK...
See details... XGLOBALW Global Weighing MP 30...
See details... XHART Rosemount Hart Revision...
See details... XHITACHE Hitachi PLCs EB/EC/EM-II...
See details... XHITACHH Hitachi PLC Serie H Protocol...
See details... XHITAS10 Hitachi HIDIC S10 Alpha...
See details... XIDECM3 Idec Izumi Micro3 Programmable...
See details... XIDECONC Idec Open Net Controller...
See details... XIEARING IEA Single-Loop Controllers...
See details... XIGDL2CH IG Instrumentos DataLogger...
See details... XIGEVAPO IG Instrumentos Evaporimeter...
See details... XIGPL100 IG Instrumentos DataLogger...
See details... XINTERGY Swichtec SM20/Sm50 Intergy...
See details... XIZUMFA3 Izumi FA-3S/FA2-5M Communication...
See details... XIZUMIFA Izumi FA-1/1J/2/2J Peer...
See details... XIZUMINT Izumi FA-1/1J/2/2J Network...
See details... XKMOELLR Hitachi PLC Serie H Protocol...
See details... XKOYO305 Koyo DL305 PLC Family...
See details... XKOYO405 Koyo DL405 PLC Family...
See details... XLENNOX Lennox IMC System Bus...
See details... XLOGNET Tecnotrol LogicNET Communication...
See details... XMBENRON Modbus Enron ASCII Protocol...
See details... XMELSECA Mitsubishi Melsec-Q A-Compatible...
See details... XMITSUFX Mitsubishi PLC FX Series...
See details... XMODBTCP Modbus TCP Protocol Drive...
See details... XMODBUSA Gould Modicon Modbu...
See details... XMODBUSB Gould Modicon Modbu...
See details... XMODEM Hayes Compatible Modem...
See details... XN2 Johnson Controls N2 Master...
See details... XNAIS NAIS Matsushita MEWTOCOL-COM...
See details... XND601X ADLink Technology NuDAM-601X...
See details... XOMRON Omron Sysmac C20H/C28H/C40H...
See details... XOPTOMUX Opto22 I/O Optomux Modules...
See details... XPOW3300 Power Measurement 3300...
See details... XPOW3710 Power Measurement 3710...
See details... XPOW3720 Power Measurement 3720...
See details... XPOW6200 Power Measurement 6200...
See details... XPOW7300 Power Measurement 7300/7330...
See details... XPROT200 ABB Procontic T-200 Protocol...
See details... XREDLION Red Lion Counters Protocol...
See details... XRIAC Micro Axial RIAC Remote...
See details... XROC300 Fisher Controls ROC300...
See details... XS5CP521 Siemens S5-90U/95U/100U...
See details... XS5CP524 Siemens S5-115U/135U/150U...
See details... XS7MPI Siemens S7-300/400 MPI...
See details... XS7MPITP Siemens S7-300/400 MPI...
See details... XS7PPI Siemens S7-200 Advanced...
See details... XSAIADAT Saia PCD3 Series S-BUS...
See details... XSAIAPCD Saia PCD Series Point...
See details... XSAIASS0 Saia PCD Series S-BUS...
See details... XSAMCPU2 Samsung FARA PLC CP...
See details... XSAMSECT Samsung SECTOCOL-COM/N70/N700...
See details... XSCD80 Caipe SCD 80 Programmable...
See details... XSHISD20 Shimaden SD20 Serie...
See details... XSHISR50 Shimaden SR50 Serie...
See details... XSIM4100 Simplex 4100 Fire Alarm...
See details... XSIXNET SixNet GTU Protocol Drive...
See details... XSQUARED Square-D SY/MAX Point-to-Point...
See details... XSUCOMA Klockner-Moeller SUCOM-A...
See details... XSYLVAC Sylvac Measuring Instruments...
See details... XTEST Serial Line Testing Master...
See details... XTIS305 Texas Instruments TI-305...
See details... XTIS405 Texas Instruments TI-405...
See details... XTIS505 Texas Instruments TI-505...
See details... XTIS505T Texas Instruments TI-505...
See details... XTSXNANO Telemecanique TSX Nano...
See details... XTWIDOS Schneider Electric Telemecanique...
See details... XTWIDOT Schneider Electric Telemecanique...
See details... XTXM IG Instrumentos TECPET/MNT...
See details... XUDC3000 Honeywell UDC 3000 Universal...
See details... XUDC9000 Honeywell UDC9000 Controllers...
See details... XUMC600 Umc600 Weight Indicator...
See details... XVILTER Vilter Compressors Protocol...
See details... XWIMPACC Westinghouse IMPACC System...
See details... XWITNET WIT-NET TRSII v4.7 Protocol...
See details... XYOKOUT Yokowaga UT35/UT15/UM05...
See details... XYOKUT37 Yokogawa UT37/UT38 Controller...
See details... XYUYAO Yuyao Changjiang Temperature...
See details... XZET173X Zetron M173X Controller...
See details... XZETMODB Zetron M1708/1716 Modbus...
See details... XZETRON Zetron M1700 Controller...
 
Search within blogs Minimize
 
Select by date Minimize
 
 Copyright 1990-2008 by CPKSoft   Terms Of Use  Privacy Statement