What Happens if FP Read is Called and the FieldPoint Network Module is Offline? Primary Software: Driver Software>>NI-FieldPointPrimary Software Version: 3.0 Primary Software Fixed Version: N/A Secondary Software: N/A
Problem: Due to a communication or power failure, a network module may go offline during or just before a read operation. This can change the way the module responds. Solution: The FP Read.vi will behave slightly differently for serial network modules that are offline and ethernet modules that are offline. Serial Modules (FP-1000/1001) In the case of serial modules (FP-1000/1001), a read command is sent and the FP Read.vi will not return until the timeout period for message response has elapsed. This timeout period is configured within FieldPoint Explorer as part of the Communication Resource (default is 200 ms). The FP Read.vi will be slightly slower in responding than normal (based upon the configured timeout period) and will return an error. In the case of the FP-1000/1001, the error code 32828 "The timeout period has expired." In internal error handling within the FieldPoint VI's this is considered a warning and not a fatal error. If you have a loop that uses a shift register to pass the error cluster around, one or more 32838 errors will not stop the acquisition of your data. Ethernet Modules (FP-1600/2000/2010) For ethernet modules (FP-1600/2000/2010), the FP Read.vi is actually reading locally cached data. Thus, any instance of FP Read.vi will come back (almost) instantaneously, regardless of the actual status of the FieldPoint Bank. There is still a timeout value and in a manner similar to the serial modules, the timeout is set in the Comm Resource window. In the case of ethernet modules, the FieldPoint server operates in the background and maintains subscriptions to data items on various ethernet network modules. There is a heartbeat shared between the server and the modules so that if communications are lost, the server will timeout and realize the system is offline and will flag the data with an error. Note, the heartbeat is one of the reasons you will see periodic network activity on an ethernet controller even when the data is not changing. In the case of timeouts with ethernet modules, either of two error codes can be returned; 33162 "Unable to connect to the data item on the module" or 33163, "The connection to the module has been broken". The first error will be returned if the program has started while the module was offline and has not been communicated with, the second error will be returned in cases where we have lost communication with the module. Unlike the 32828 error code, the internal error handler does (currently) consider network failures as fatal errors, even though it is recoverable. Since it is considered a fatal error, if a shift register is used to pass the error between iterations of the loop, the VI will never try to check again to see if the module is offline. For this reason, it is recommend to avoid using shift registers to pass the error cluster output of FieldPoint VI's from one iteration to the next of a loop. Related Links: KnowledgeBase 2QT8A5DJ: Error 33162 with FieldPoint Ethernet Module KnowledgeBase 42GHEALA: How Can I Fix Error 32804 at FP Read VI? KnowledgeBase 39A88TMV: Advantage of Using the FP Write/Read Attachments:
Report Date: 11/30/2001 Last Updated: 05/07/2008 Document ID: 2FT7TI9O |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
