<?xml version="1.0" encoding="Shift_JIS"?>
<?xml-stylesheet type="text/xsl" href="../Fmethod_xsl/fmethod_he_c.xsl"?>

<root>
  <func>


    <title>cnc_wrpscdpirc</title>



    <declare>
      <vc>
        <include>#include "fwlib32.h"</include>
        <prottype>FWLIBAPI short WINAPI cnc_wrpscdpirc(unsigned short FlibHndl,short s_no, short *number, IODBPIRC *pircing); </prottype>
      </vc>
    </declare>



    <doc>
        <cmn>
            <p> Writes the piercing data of the cutting condition file.
            </p>
        </cmn>
    </doc>



    <argument>
        <common>
            <vc>
                <item>
                    <name>FlibHndl</name>
                    <type>in</type>
                    <content>
                        <p>
                            Specify the library handle. See "<a href="handle.htm" target="_parent">Library handle</a>" for details.
                        </p>
                    </content>
                </item>
                <item>
                    <name>s_no</name>
                    <type>in</type>
                    <content>
                        <p>
                            Specify the start piercing data group number.
                            <table border="0" class="dd">
                                <tr> <td>101 to 103</td><td>:</td><td>  piercing data group number</td>   </tr>
                            </table>
                        </p>
                    </content>
                </item>
                <item>
                    <name>number</name>
                    <type>in/out</type>
                    <content>
                        <p>
                            Pointer to the number of piercing data.
                            Specify the number of piercing data to be written before function call, 
                            and the number of piercing data being written actually is stored after the function call.
                        </p>
                    </content>
                </item>
                <item>
                    <name>pircing</name>
                    <type>in</type>
                    <content>
                        <p>
                            Pointer to the IODBPIRC structure including the piercing data of the cutting condition file.
                            The IODBPIRC structure is as follows.
                        </p>
<pre>
typedef struct iodbpirc {
    short   slct;       /* Flag of data selection */
    short   power;      /* Peak power */
    short   freq;       /* Initial frequency */
    short   duty;       /* Initial duty */
    short   i_freq;     /* Step frequency */
    short   i_duty;     /* Step duty */
    short   step_t;     /* Step time */
    short   step_sum;   /* Step number */
    long    pier_t;     /* Piercing time */
    short   g_press;    /* Assist gas pressure */
    short   g_kind;     /* Assist gas select */
    short   g_time;     /* Assist gas setting time */
    short   def_pos;    /* Reference displace */
    short   reserve[4]; /* (reserve) */
} IODBPIRC ;
</pre>
                        <dl>
                            <dt>slct</dt>
                                <dd>Flag of data selection must be set.</dd>
                            <dd><table border ="0" class="dd">
                                <tr> <td>bit 0</td><td>:</td><td>Peak power</td> </tr>
                                <tr> <td>bit 1</td><td>:</td><td>Initial frequency</td> </tr>
                                <tr> <td>bit 2</td><td>:</td><td>Initial duty</td> </tr>
                                <tr> <td>bit 3</td><td>:</td><td>Step frequency</td> </tr>
                                <tr> <td>bit 4</td><td>:</td><td>Step duty</td> </tr>
                                <tr> <td>bit 5</td><td>:</td><td>Step time</td> </tr>
                                <tr> <td>bit 6</td><td>:</td><td>Step number</td> </tr>
                                <tr> <td>bit 7</td><td>:</td><td>Piercing time</td> </tr>
                                <tr> <td>bit 8</td><td>:</td><td>Assist gas pressure</td> </tr>
                                <tr> <td>bit 9</td><td>:</td><td>Assist gas select</td> </tr>
                                <tr> <td>bit10</td><td>:</td><td>Assist gas setting time</td> </tr>
                                <tr> <td>bit11</td><td>:</td><td>Reference displace</td> </tr>
                                <tr> <td>bit12,..,15</td><td>:</td><td>(reserve)</td> </tr>
                            </table></dd>
                            <dd>* In order to write the data to CNC, turn on the corresponding bit on this data.</dd>
                            <dt>power</dt>
                                <dd>Specify peak power.</dd>
                                <dd>(Setting range: 0 to 9999, Unit: W)</dd>
                            <dt>freq</dt>
                                <dd>Specify initial frequency.</dd>
                                <dd>(Setting range: 5 to 2000, Unit: Hz)</dd>
                            <dt>duty</dt>
                                <dd>Specify initial duty.</dd>
                                <dd>(Setting range: 0 to 100, Unit: %)</dd>
                            <dt>i_freq</dt>
                                <dd>Specify step frequency.</dd>
                                <dd>(Setting range: 5 to 2000, Unit: Hz)</dd>
                            <dt>i_duty</dt>
                                <dd>Specify step duty.</dd>
                                <dd>(Setting range: 0 to 99, Unit: %)</dd>
                            <dt>step_t</dt>
                                <dd>Specify step time.</dd>
                                <dd>(Setting range: 0 to 9999, Unit: 0.001second)</dd>
                            <dt>step_sum</dt>
                                <dd>Specify step number.</dd>
                                <dd>(Setting range: 0 to 99, Unit: time)</dd>
                            <dt>pier_t</dt>
                                <dd>Specify piercing time.</dd>
                                <dd>(Setting range: 1 to 999999, Unit: 0.001sec.)</dd>
                            <dt>g_press</dt>
                                <dd>Specify assist gas pressure.</dd>
                                <dd>(Setting range: 0 to 255, Unit: 0.1Kg/cm2)</dd>
                            <dt>g_kind</dt>
                                <dd>Specify assist gas select.</dd>
                                <dd>(Setting range: 1 to 7, Unit: kind)</dd>
                            <dt>g_time</dt>
                                <dd>Specify assist gas setting time.</dd>
                                <dd>(Setting range: 0 to 99, Unit: 0.1second)</dd>
                            <dt>def_pos</dt>
                                <dd>Specify reference displace.</dd>
                                <dd>(Setting range: -32767 to 32767, Unit: 0.001mm)</dd>
                            <dt>reserve</dt>
                                <dd>(reserve)</dd>
                        </dl>
                    </content>
                </item>
            </vc>
        </common>
    </argument>



    <errcode>
        <item>
            <name>EW_FUNC</name>
            <content>
                Unavailable<br/>
                This function cannot be used except 160i-L.
            </content>
        </item>
        <item>
            <name>EW_LENGTH</name>
            <content>
                Data block length error<br/>
                Number of data(number) is wrong.
            </content>
        </item>
        <item>
            <name>EW_NUMBER</name>
            <content>
                Data number error<br/>
                Start number(s_no) is wrong.
            </content>
        </item>
        <item>
           <name>EW_DATA</name>
            <content>
                Data error<br/>
                The piercing data of the cutting condition file is wrong.
                In order to get more information for this err_no return value, execute 
                <a href="Misc/cnc_getdtailerr.htm" target="_parent">cnc_getdtailerr</a> function. 
                The piercing data group number which an error occurred will be set onto the member of err_no of ODBERR structure, 
                and the following detailed status will be set onto the member of err_dtno of ODBERR structure.
                <table border="0">
                    <tr><td>1</td><td>:</td><td>Error of peak power</td></tr>
                    <tr><td>2</td><td>:</td><td>Error of initial frequency</td></tr>
                    <tr><td>3</td><td>:</td><td>Error of initial duty</td></tr>
                    <tr><td>4</td><td>:</td><td>Error of step frequency</td></tr>
                    <tr><td>5</td><td>:</td><td>Error of step duty</td></tr>
                    <tr><td>6</td><td>:</td><td>Error of step time</td></tr>
                    <tr><td>7</td><td>:</td><td>Error of step number</td></tr>
                    <tr><td>8</td><td>:</td><td>Error of piercing time</td></tr>
                    <tr><td>9</td><td>:</td><td>Error of assist gas pressure</td></tr>
                    <tr><td>10</td><td>:</td><td>Error of assist gas select</td></tr>
                    <tr><td>11</td><td>:</td><td>Error of assist gas setting time</td></tr>
                    <tr><td>12</td><td>:</td><td>Error of reference displace</td></tr>
                </table>
            </content>
        </item>
        <item>
            <name>EW_NOOPT</name>
            <content>
                No option<br/>
                The cutting condition setting function and the extended driver/library function are necessary.
            </content>
        </item>
    </errcode>



    <option>
        <hssb>The extended driver/library function is necessary.</hssb>
        <ethr><p>The Ethernet function and the extended driver/library function are necessary.</p>
              <p>When Embedded Ethernet is used,</p>
              <p><ul>above two optional functions are not required.</ul></p>
              <p>When Ethernet board is used,</p>
              <p><ul>only Ethernet function is required.</ul></p>
        </ethr>
        <need>The cutting condition setting function is necessary.</need>
    </option>



    <parameter>
    </parameter>



    <mode>
    </mode>



    <support>
        <m>
            <fs0ia>-</fs0ia>
            <fs0ib>-</fs0ib>
            <fs15>-</fs15>
            <fs15i>-</fs15i>
            <fs16>-</fs16>
            <fs18>-</fs18>
            <fs21>-</fs21>
            <fs16ia>-</fs16ia>
            <fs18ia>-</fs18ia>
            <fs21ia>-</fs21ia>
            <fs16ib>-</fs16ib>
            <fs18ib>-</fs18ib>
            <fs21ib>-</fs21ib>
            <fs30i>-</fs30i>
        </m>
        <t>
            <fs0ia>-</fs0ia>
            <fs0ib>-</fs0ib>
            <fs15>-</fs15>
            <fs15i>-</fs15i>
            <fs16>-</fs16>
            <fs18>-</fs18>
            <fs21>-</fs21>
            <fs16ia>-</fs16ia>
            <fs18ia>-</fs18ia>
            <fs21ia>-</fs21ia>
            <fs16ib>-</fs16ib>
            <fs18ib>-</fs18ib>
            <fs21ib>-</fs21ib>
            <fs30i>-</fs30i>
        </t>
        <lc>
            <fs0ia>-</fs0ia>
            <fs0ib>-</fs0ib>
            <fs15>-</fs15>
            <fs15i>-</fs15i>
            <fs16>-</fs16>
            <fs18>-</fs18>
            <fs21>-</fs21>
            <fs16ia>-</fs16ia>
            <fs18ia>-</fs18ia>
            <fs21ia>-</fs21ia>
            <fs16ib>-</fs16ib>
            <fs18ib>-</fs18ib>
            <fs21ib>-</fs21ib>
            <fs30i>-</fs30i>
        </lc>
        <p>
            <fs16i>-</fs16i>
            <fs18i>-</fs18i>
        </p>
        <l>
            <fs16i>O</fs16i>
            <fs18i>X</fs18i>
        </l>
        <w>
            <fs16i>-</fs16i>
            <fs18i>-</fs18i>
        </w>
        <pw>
            <d>-</d>
            <h>-</h>
        </pw>
    </support>



    <reference>
        <item>
            <name>cnc_rdpscdpirc</name>
            <file>Laser/cnc_rdpscdpirc.htm</file>
        </item>
    </reference>



    <example>
    </example>



  </func>
</root>
