Differences
This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
en:software:devices:recdata [2016/12/27 16:25] – [3.1. Step disponibili per la memorizzazione] qem103 | en:software:devices:recdata [2020/07/13 15:00] (current) – qem103 | ||
---|---|---|---|
Line 1: | Line 1: | ||
+ | ====== DEVICE RECDATA ====== | ||
+ | |||
+ | |||
+ | ====== - Introduction ====== | ||
+ | |||
+ | The internal RECDATA device is the tool that resides in CPU that allows you to manage data logging type: | ||
+ | * Encoder counters | ||
+ | * Axis virtual counters (is the theoretical position that must take the axis) | ||
+ | * Analog outputs | ||
+ | * Following error axes | ||
+ | * Inputs state | ||
+ | * Outputs state | ||
+ | To record this data is exploited the RAM of the CPU, for this reason, to use this device, the percentage utilization of data memory (USER Data memory) total shall not exceed 50%. The device occupies the 50% of the RAM. | ||
+ | |||
+ | |||
+ | ===== - Installation ===== | ||
+ | |||
+ | ==== - Device declaration in the configuration file (.CNF) ==== | ||
+ | |||
+ | In the configuration file (.CNF), the BUS section must be declared so that you have the hardware resources required for the implementation of the RECDATA device.\\ | ||
+ | In the INTDEVICE section of the .CNF file must be add the following definition: | ||
+ | |||
+ | ^:info:^It is necessary that each definition are present on the same line. In case you do not want to assign a resource, for example IntL, You must enter in the appropriate field the X string.^ | ||
+ | |||
+ | <code QCL> | ||
+ | ; | ||
+ | ; Internal device declaration | ||
+ | ; | ||
+ | INTDEVICE | ||
+ | .. | ||
+ | < | ||
+ | </ | ||
+ | |||
+ | where: | ||
+ | |<device name>| The name assigned to the device.| | ||
+ | |RECDATA|Keyword that identifies the devices.| | ||
+ | |TCamp|Tempo di campionamento device (1÷255 ms).| | ||
+ | |QCTL1|Address bi-directional meter 1 (to prevent the device uses this resource to put the X.X character).| | ||
+ | |QCTL2|Address bi-directional meter 2 (to prevent the device uses this resource to put the X.X character).| | ||
+ | |IOutA1|Hardware address of the DAC component of analog output 1. (to prevent the device uses this resource to put the X.X character).| | ||
+ | |IOutA2|Hardware address of the DAC component of analog output 2. (to prevent the device uses this resource to put the X.X character).| | ||
+ | |IntL1|Number of the interrupt line 1 (to prevent the device uses this resource to put the X character). This interrupt line can give the start to registration.| | ||
+ | |IntL2|Number of the interrupt line 2 (to prevent the device uses this resource to put the X character).| | ||
+ | |Ing1|Generic input 1| | ||
+ | |Ing2|Generic input 2| | ||
+ | |Out1|Generic output 1| | ||
+ | |Out2|Generic output 2| | ||
+ | |||
+ | <code QCL> | ||
+ | ; | ||
+ | ; Internal device declaration | ||
+ | ; | ||
+ | INTDEVICE | ||
+ | Rec RECDATA | ||
+ | </ | ||
+ | |||
+ | |||
+ | ===== - Operation ===== | ||
+ | |||
+ | Below is a diagram of the operation of the RECDATA device {{ : | ||
+ | The RECDATA device works only with the maximum resolution of the transducer (bit encoder * 4). | ||
+ | In the case that the analog output declared in the configuration file is used by a device to analog positioning (CAMMING or EANPOS type), the monitor offers the display of the theoretical position of the axis in addition to the practical. The difference between the two counts is the following error of axis. The reference device for this information is the one that currently using the analog output hardware resource.\\ | ||
+ | You can start recording via the interrupt input ('' | ||
+ | |||
+ | ==== - Available steps for storing ==== | ||
+ | |||
+ | The device uses 50% of CPU RAM memory, which is split into banks of 16 Bytes. The number of steps available for registration is indicated by //stepnum// parameter, which is read only, and is calculated with the formula:\\ | ||
+ | //stepnum// = RAM available : 16\\ | ||
+ | The 16 Bytes of the Bank (named step) are divided into 4 Long, named //data1//, //data2//, //data3// and //data4//. Formatting data in memory depends on how you set the mode parameter according to the following order:\\ | ||
+ | State I/O\\ | ||
+ | Encoder 1\\ | ||
+ | Encoder 2\\ | ||
+ | Analog output 1\\ | ||
+ | Analog output 2\\ | ||
+ | Following error 1\\ | ||
+ | Following error 2\\ | ||
+ | Virtual encoder 1\\ | ||
+ | Virtual encoder 2\\ | ||
+ | For the user it will be difficult to interpret the data obtained without going through the QVIEW (the development software has a dedicated tool). For this reason is not delved into the topic if not upon the customer' | ||
+ | |||
+ | |||
+ | ===== - Device error management ===== | ||
+ | |||
+ | An error in the device is signaled by the // | ||
+ | When // | ||
+ | |||
+ | ^Code^Priority^Description^ | ||
+ | |1|1|Modified mode parameter during registration| | ||
+ | |||
+ | If the device goes wrong, in order to start working you have to clear the // | ||
+ | |||
+ | |||
+ | ===== - Warning device management ===== | ||
+ | |||
+ | The presence of a warning in the system camming is signaled by the // | ||
+ | Being caused by a minor event and being guaranteed in this situation the management of device, the tool continues his work.\\ | ||
+ | When // | ||
+ | |||
+ | ^Code^Priority^Description^ | ||
+ | |1|0|Command not executed| | ||
+ | |||
+ | To clear the // | ||
+ | |||
+ | |||
+ | ===== - Commands and parameters table ===== | ||
+ | |||
+ | ==== - Symbols used ==== | ||
+ | |||
+ | The parameter name, condition or command is taken back to the left side of the table. | ||
+ | |||
+ | **R**\\ | ||
+ | Indicates if the parameter or state is retentive (upon initialization of the device maintains the previously defined), or the state assumes upon initialization of the device.\\ | ||
+ | If the device does not need to initialize the " | ||
+ | R = Retentive\\ | ||
+ | 0 = Upon initialization of the device the value is forced to zero.\\ | ||
+ | 1 = Upon initialization of the device the value is forced to one.\\ | ||
+ | - = Upon initialization of the device is presented significant value. | ||
+ | |||
+ | **D**\\ | ||
+ | Indicates the size of the parameter.\\ | ||
+ | F = Flag\\ | ||
+ | B = Byte\\ | ||
+ | W = Word\\ | ||
+ | L = Long\\ | ||
+ | S = Single Float | ||
+ | |||
+ | === - Conditions === | ||
+ | |||
+ | Describes all the conditions necessary so that the parameter is considered correct or because the command is accepted.\\ | ||
+ | In some cases, limit values are specified for the acceptance of the parameter: if introduced any values outside the limits set, the data is however accepted; therefore appropriate controls of the application must be provided to ensure the proper functioning.\\ | ||
+ | To execute a command, all the conditions must be met; otherwise, the command is not sent. | ||
+ | |||
+ | **A**\\ | ||
+ | Indicates the **access mode**.\\ | ||
+ | R = Read.\\ | ||
+ | W = Write.\\ | ||
+ | RW = Read / Write. | ||
+ | |||
+ | ==== - Commands ==== | ||
+ | |||
+ | The commands were ranked by decreasing priority. For example, in the case of contemporary of //INIT// and //EMRG// commands, is acquired first the //INIT// command. | ||
+ | |||
+ | ^Name^Conditions^Description^ | ||
+ | |STARTR|st_rec = 0\\ st_error = 0|**Start recording**\\ Command the beginning of data acquisition.\\ Activates the //st_reck// state.| | ||
+ | |STOPR|st_rec = 1|**Stop recording**\\ Stops the registration process data.\\ Reset the //st_rec// state.| | ||
+ | |READSTEP|stepnum> | ||
+ | |INTENBL|capture> | ||
+ | |INTDSBL|No|**Interrupt disable**\\ Disable the interrupt capture.\\ Reset the // | ||
+ | |RSCAPTURE|No|**Reset capture**\\ Disable the // | ||
+ | |RSERR|No|**Reset error**\\ Reset the // | ||
+ | |RSWRN|No|**Reset warning**\\ Reset the // | ||
+ | |||
+ | ==== - Parameters ==== | ||
+ | |||
+ | ^ Name ^ D ^ R ^ A ^ Conditions | ||
+ | | stepnum | ||
+ | | stepin | ||
+ | | stepout | ||
+ | | data1 | L | 0 | R | No | **Data number 1**\\ Variable use. Inside are the values captured during recording.\\ See dedicated chapter. | ||
+ | | data2 | L | 0 | R | No | **Data number 2**\\ Variable use. Inside are the values captured during recording.\\ See dedicated chapter. | ||
+ | | data3 | L | 0 | R | No | **Data number 3**\\ Variable use. Inside are the values captured during recording.\\ See dedicated chapter. | ||
+ | | data4 | L | 0 | R | No | **Data number 4**\\ Variable use. Inside are the values captured during recording.\\ See dedicated chapter. | ||
+ | | capture | ||
+ | | mode | B | R | R-W | st_rec = 0 | **Recording mode**\\ The recording mode is defined by a Byte whose individual bit, if set to 1, enable the acquisition.\\ **2< | ||
+ | | tbase | W | R | R | No | **Time base**\\ View sample time programmed in the configuration file. | | ||
+ | | errcode | ||
+ | | errvalue | ||
+ | | wrncode | ||
+ | | wrnvalue | ||
+ | |||
+ | ==== - States ==== | ||
+ | |||
+ | ^ Name ^ D ^ R ^ A ^ Conditions | ||
+ | | st_intenbl | ||
+ | | st_capture | ||
+ | | st_int1 | ||
+ | | st_int2 | ||
+ | | st_error | ||
+ | | st_warning | ||
+ | |||
+ | |||
+ | ===== - Limitations ===== | ||
+ | |||
+ | No limitation | ||
+ | |||