NewsCNCnetPDMAbout usSupport
  

CNC_WRWAVEPRM | WAVE

Description

Writes the waveform diagnosis parameter.

cnc_wrwaveprm2 supports Series 15i and is expanded the function.
Please use cnc_wrwaveprm2 better than cnc_wrwaveprm.

In case of using this function, the waveform diagnosis screen of CNC must not be used.
If used, the behavior of this function is not guaranteed.
MTConnect Fanuc Adapter

Universal Fanuc Driver

Fanuc Focas Library CD

Declaration

#include "fwlib32.h"

FWLIBAPI short WINAPI cnc_wrwaveprm(unsigned short FlibHndl, IODBWAVE *wave);

Arguments

FlibHndl   [ in ]

Specify the library handle.
See "Library handle" for details.

wave   [ in ]

Pointer to the IODBWAVE structure including the waveform diagnosis parameter.
The IODBWAVE structure is as follows.


typedef struct iodbwave {
    short   condition ; /* condition */
    char    trg_adr ;   /* trigger address */
    char    trg_bit ;   /* trigger bit */
    short   trg_no ;    /* trigger number */
    short   delay ;     /* delay time */
    short   t_range ;   /* sampling time */
    struct {
        short   kind ;  /* kind of waveform data */
        union {
#ifdef M_AXIS2  /* Series 15 : maximum axis=24 */
            long        axis ;  /* axis information */
#else
            short       axis ;  /* axis information */
#endif
            struct {            /* machine signal */
                char    adr ;   /*   kind of PMC address */
                char    bit ;   /*   bit number */
                short   no ;    /*   number of PMC address */
            } io ;
        } u ;
    } ch[12] ;
} IODBWAVE ;
condition
condition
One of the following condition should be specified.
0 : The sampling of the data is started by cnc_wavestart function, and stopped after the specified sampling time.
1 : The sampling of the data is started when the trigger specified by the next item rises after calling cnc_wavestart function, and stopped after the specified sampling time.
2 : The sampling of the data is started when the trigger specified by the next item falls after calling cnc_wavestart function, and stopped after the specified sampling time.
100 : The sampling of the data is started by cnc_wavestart function, and stopped when a servo alarm occurrs.
101 : The sampling of the data is started by cnc_wavestart function, and stopped when a servo alarm occurrs or the trigger rises.
102 : The sampling of the data is started by cnc_wavestart function, and stopped when a servo alarm occurrs or the trigger falls.
* In case of Series 16/18, 16i/18i/21i, 0i, the waveform data under the condition 100,101,102 is backupped even if the power is off.
* In case of Series 16i/18i-W, there is not the setting for condition 100,101,102.

trg_adr
trigger address
Specify the kind of PMC address which corresponds to machine signal for a trigger with ASCII code.
It is valid when condition is 1/2/101/102.
Kind of stored PMC address : "G","F","Y","X"
NULL(0x00) invalidates the setting.

trg_bit
trigger bit
Specify the bit number of PMC address which corresponds to machine signal for a trigger.
It is valid when condition is 1/2/101/102.
Range of stored bit number : 0 - 7

trg_no
trigger number
Specify the PMC address number which corresponds to machine signal for a trigger.
It is valid when condition is 1/2/101/102.
Range of stored number is shown in pmc_rdpmcrng function reference.

delay
delay time
After the stop condition is satisfied and this delay time has passed, the sampling is stopped.
range
Series 150 - 32000
Series 16/18, 16i/18i/21i, 0i0 - 32760
unit 1 msec
It is valid when the condition is 100/101/102.

t_range
sampling time
sampling time is stored.
range
Series 15 25/50/100/200/400/800 show the following time respectively.
500/1000/2000/4000/8000/16000
Series 16/18, 16i/18i/21i, 0i10 - 8192
unit 1 msec
It is valid when the condition is 0/1/2.

ch[n].kind
kind of waveform data( n is channel number 0 - 11)
Specify the number in the table of "Kind of waveform data" on the next page.

An available channel and the kind of the waveform data are as follows according to the CNC MODEL and the condition.
condition : 100/101/102
channel No (n) ch[n].kind
(kind of waveform data)
Series 16/18, 16i/18i/21i, 0i Series 15
000 - 2, 4 - 7
110 - 2, 4 - 7
220 - 2, 4 - 7
350 - 2, 4 - 7
46not used
57not used
condition : 0/1/2
channel No (n) ch[n].kind
(kind of waveform data)
Series 16/18, 16i/18i/21i, 0i Series 15
6 0 - 3, 5 - 7, 9 - 13 0 - 2, 4 - 7, 9 - 11
7 0 - 3, 5 - 7, 9 - 13 0 - 2, 4 - 7, 9 - 11
8 not used 0 - 2, 4 - 7, 9 - 11
9 not used 13
10 not used 13
11 not used 13
* If "-1" is stored in ch[n].kind, the data of its channel is invalid.
(The value of "kind" concerning an unused channel is indefinite.)
* Select a following member of union properly according to the value of ch[n].kind.
ch[n].u.axis kind : except '13'
ch[n].u.io kind : '13'
* In case of Series 16i/18i-W, there is not the value of ch[n].kind, 100,101,102.

Kind of waveform data (O:available,X:not available)
number meaning unit Series 16/18, 16i/18i/21i, 0i Series 15
0/1/2 100/101/102 0/1/2 100/101/102
-1No data- OOOO
0Servo error(8msec)Pulse(detection unit) OOOO
1Number of servo pulses to be generatedPulse(detection unit) OOOO
2Servo torque%(max. current ratio) OOOO
3Servo error(2msec)Pulse(detection unit) OXXX
4Number of servo pulses after acceleration,decelerationPulse(detection unit) XXOO
5Actual speedrpm OOXX
Pulse(detection unit) XXOO
6Value of the electric current command for servo%(max. current ratio) OOOO
7Data during heat%(OVC alarm ratio) OOOO
9Composite speed for 1st,2nd,3rd axisPulse(detection unit) OXXX
Composite speed for all axesMM/MIN or RPM XXOX
10Spindle speed%(max. spin ratio) OXXX
rpm XXOX
11Load meter for spindle%(max. output ratio) OXOX
12Difference of spindle conversion errorPulse(detection unit) OXXX
13on/off state of specified machine signal- OXOX

ch[n].u.axis
axis information of waveform data
Specify the axis information of waveform data.
It is valid when the kind of waveform data is expect '13'.
0 invalidates the setting of its channel.

Axis information are as follows.

  • Series 15
    • Each bit according to the kind of waveform data is as follows.
      Plural bits cannot be set.
      In case that condition is 0/1/2, channel number 6, 7 are valid.
      In case that condition is 100/101/102, channel number 0,..,3 are valid.
      Channel 0 and 1, channel 2 and 3 must be set the same. If not, channel 0 and 2 is valid.

      Maximum axis <= 15
      kind of waveform data
      0 - 7
      bit 0 ON:first axis designation
      bit 1 ON:second axis designation
         :
      bit 14 ON:15th axis designation
      bit 15:not used
      9
      bit 0 ON:first path designation
      bit 1 ON:second path designation(only 15TT)
      bit 2 - 15:not used
      10 - 11
      bit 0 ON:first spindle designation
      bit 1 ON:second spindle designation
      bit 2 - 15:not used

      Maximum axis = 24
      kind of waveform data
      0 - 7
      bit 0 ON:first axis designation
      bit 1 ON:second axis designation
         :
      bit 22 ON:23rd axis designation
      bit 23 ON:24th axis designation
      bit 24 - 31:not used
      9
      bit 0 ON:first path designation
      bit 1 ON:second path designation(only 15TT)
      bit 2 - 31:not used
      10 - 11
      bit 0 ON:first spindle designation
      bit 1 ON:second spindle designation
      bit 2 - 31:not used

  • Series 16/18, 16i/18i/21i, 0i
    • Each bit according to channel number is as follows.

      channel 0 - 5
      The kind of waveform data
      0 - 3, 5 - 7
      bit 0 ON:first axis designation
      bit 1 ON:second axis designation
         :
      bit 7 ON:eighth axis designation
      bit 8 - 15:not used
      * Plural axes cannot be set.

      channel 6, 7
      The kind of waveform data
      0 - 3, 5 - 7
      bit 0 ON:first axis designation
      bit 1 ON:second axis designation
         :
      bit 7 ON:eighth axis designation
      bit 8 - 15:not used
      * Plural axes cannot be set.
      10 - 11
      bit0 ON:first spindle designation
      bit1 ON:second spindle designation
      bit2 ON:third spindle designation
      bit3 - 15:not used
      * Plural spindles cannot be set.

    ch[n].u.io.adr
    Kind of PMC address of machine signal
    Specify the kind of PMC address which corresponds to machine signal to trace with ASCII code.
    It is valid only when condition is 0/1/2 and the kind of waveform data is 13.
    Kind of stored PMC address : "G","F","Y","X"
    NULL(0x00) invalidates the setting.

    ch[n].u.io.bit
    bit number of machine signal
    Specify the bit number of PMC address which corresponds to machine signal to trace.
    It is valid only when condition is 0/1/2 and the kind of waveform data is 13.
    Range of stored bit number : 0 - 7

    ch[n].u.io.no
    number of PMC address of machine signal
    Specify the PMC address number which corresponds to machine signal to trace.
    It is valid only when condition is 0/1/2 and the kind of waveform data is 13.
    Range of specified number is shown in pmc_rdpmcrng function reference.

    Return

    EW_OK is returned on successful completion, otherwise any value except EW_OK is returned.

    The major error codes are as follows.

    Return code Meaning/Error handling
    EW_DATA
    (5)
    data error
    In order to get more information for this err_no return value, execute cnc_getdtailerr function.
    The following detail status will be set onto the member, err_no of ODBERR structure.
    0:Error except EW_DATA
    1:Start condition(condition) error
    2:Trigger condition(trg_adr) error
    3:Trigger bit(trg_bit) error
    4:Trigger number(trg_no) error
    5:Delay time(delay) error
    6:Sampling time(t_range) error
    7:Kind of waveform data(ch[n].kind) error
    8:Axis information of waveform data(ch[n].u.axis) error
    9:Kind of PMC address of machine signal(ch[n].u.io.adr) error
    10:Bit number of PMC address of machine signal(ch[n].u.io.bit) error
    11:PMC address number of machine signal(ch[n].u.io.bit) error
    And the channel number(0 - 11) including incorrect data will be set onto the member, err_dtno of ODBERR.
    (In case that a date is not related to channel, -1 is set)
    EW_NOOPT
    (6)
    no option
    The extended driver/library function is necessary.
    EW_PARAM
    (9)
    CNC parameter error(Series 16/18, 16i/18i/21i, 0i)
    3112#0=0 when CNC is turned on.
    set 3112#0=1 and reboot.
    EW_REJECT
    (13)
    CNC execution rejected
    The waveform diagnosis data is being sampled.

    As for the other return codes or the details, see "Return status of Data window function"

    CNC option

    For HSSB connection,

      The extended driver/library function is necessary.

    For Ethernet connection,

      The Ethernet function and the extended driver/library function are necessary.

      However, in case of Series 16i/18i/21i-B, 0i-B/C, the required CNC option is as follows.

      When Embedded Ethernet is used,

        above two optional functions are not required.

      When Ethernet board is used,

        only Ethernet function is required.

    CNC parameter

    This function is related to the following CNC parameter.
    See the manual of CNC parameter for details.

    • Series 16/18, 16i/18i/21i, 0i
    • 3112#0=1 (must be set)

    CNC mode

    This function can be used in any CNC mode.

    Available CNC

    0i-A 0i-B/C(Note) 0i-D 0i-F 15 15i 16 18 21 16i-A 18i-A 21i-A 16i-B 18i-B 21i-B 30i-A 30i-B
    M (Machining)H O X X H X H H X O O O O O O X X
    T (Turning) H O X X H - H H X O O O O O O X X
    LC (Loader) - - - - - - X X X X X X X X X - -

    0i-D0i-F16i18i30i-A30i-B
    P (Punch press)X X O O - X
    L (Laser) - - O - - X
    W (Wire) - - O O X X


    Power Mate i-DX
    Power Mate i-HX
    Power Motion i-AX

    "O" : Both Ethernet and HSSB
    "E" : Ethernet
    "H" : HSSB
    "X" : Cannot be used
    "-" : None

    Note) 0i-C does not support the HSSB function.

    See Also

    cnc_rdwaveprm   cnc_rdwaveprm2   cnc_wrwaveprm2   cnc_wavestart   cnc_wavestop   cnc_wavestat   cnc_rdwavedata  

    Privacy notice

    This website uses cookies. By continuing to use it you agree to our privacy policy. 

    https://www.inventcom.net/fanuc-focas-library/wave/cnc_wrwaveprm

    Fanuc Focas Library | Wave | cnc_rdwavedata

    Reads waveform diagnosis data. In case of using this function, the waveform diagnosis screen of CNC must not be used.... [read more]
    Fanuc Focas Library | Wave | cnc_rdwavedata

    Fanuc Focas Library | Wave | cnc_rdwaveprm

    Reads the waveform diagnosis parameter setting.... [read more]
    Fanuc Focas Library | Wave | cnc_rdwaveprm

    Fanuc Focas Library | Wave | cnc_rdwaveprm2

    Reads the waveform diagnosis parameter setting. In case of using this function, the waveform diagnosis screen of CNC must not be used.... [read more]
    Fanuc Focas Library | Wave | cnc_rdwaveprm2

    Fanuc Focas Library | Wave | cnc_wavestart

    Starts a sampling of the waveform diagnosis data. In case of using this function, the waveform diagnosis screen of CNC must not be used.... [read more]
    Fanuc Focas Library | Wave | cnc_wavestart

    Fanuc Focas Library | Wave | cnc_wavestat

    Reads the sampling status of the waveform diagnosis data. In case of using this function, the waveform diagnosis screen of CNC must not be... [read more]
    Fanuc Focas Library | Wave | cnc_wavestat

    Fanuc Focas Library | Wave | cnc_wavestop

    Stops a sampling of the waveform diagnosis data. In case of using this function, the waveform diagnosis screen of CNC must not be used.... [read more]
    Fanuc Focas Library | Wave | cnc_wavestop

    Fanuc Focas Library | Wave | cnc_wrwaveprm2

    Writes the waveform diagnosis parameter. In case of using this function, the waveform diagnosis screen of CNC must not be used.... [read more]
    Fanuc Focas Library | Wave | cnc_wrwaveprm2

    Fanuc Focas Library | Wave | flist_Wave

    CNC: Function related to waveform diagnosis... [read more]
    Fanuc Focas Library | Wave | flist_Wave
    Modified: 2023-12-05