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

<root>
  <func>


    <title>cnc_wrpscdedge</title>



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



    <doc>
        <cmn>
            <p> Writes the edge cutting 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 edge cutting data group number.
                            <table border="0" class="dd">
                                <tr> <td>201 to 205</td><td>:</td><td>  edge cutting data group number</td>   </tr>
                            </table>
                        </p>
                    </content>
                </item>
                <item>
                    <name>number</name>
                    <type>in/out</type>
                    <content>
                        <p>
                            Pointer to the number of edge cutting data. Specify the number of edge cutting data to be written before
                            function call, and the number of edge cutting data being written actually is stored after the function call.
                        </p>
                    </content>
                </item>
                <item>
                    <name>edge</name>
                    <type>in</type>
                    <content>
                        <p>
                            Pointer to the IODBEDGE structure including the edge cutting data of the cutting condition file.
                            The IODBEDGE structure is as follows.
                        </p>
<pre>
typedef struct iodbedge {
    short   slct;       /* Flag of data selection */
    short   angle;      /* Judge angle for edge */
    short   power;      /* Piercing power */
    short   freq;       /* Piercing frequency */
    short   duty;       /* Piercing duty */
    long    pier_t;     /* Piercing time */
    short   g_press;    /* Piercing gas press */
    short   g_kind;     /* Piercing gas select */
    long    r_len;      /* Recovery distance */
    short   r_feed;     /* Recovery feedrate */
    short   r_freq;     /* Recovery frequency */
    short   r_duty;     /* Recovery duty */
    short   gap;        /* Deflection/gap */
    short   reserve[4]; /* (reserve) */
} IODBEDGE ;
</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>Judge angle for edge</td> </tr>
                                <tr> <td>bit 1</td><td>:</td><td>Piercing power</td> </tr>
                                <tr> <td>bit 2</td><td>:</td><td>Piercing frequency</td> </tr>
                                <tr> <td>bit 3</td><td>:</td><td>Piercing duty</td> </tr>
                                <tr> <td>bit 4</td><td>:</td><td>Piercing time</td> </tr>
                                <tr> <td>bit 5</td><td>:</td><td>Piercing gas press</td> </tr>
                                <tr> <td>bit 6</td><td>:</td><td>Piercing gas select</td> </tr>
                                <tr> <td>bit 7</td><td>:</td><td>Recovery distance</td> </tr>
                                <tr> <td>bit 8</td><td>:</td><td>Recovery feedrate</td> </tr>
                                <tr> <td>bit 9</td><td>:</td><td>Recovery frequency</td> </tr>
                                <tr> <td>bit10</td><td>:</td><td>Recovery duty</td> </tr>
                                <tr> <td>bit11</td><td>:</td><td>Deflection/gap</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>angle</dt>
                                <dd>Specify judge angle for edge.</dd>
                                <dd>(Setting range: 0 to 180, Unit: degree)</dd>
                            <dt>power</dt>
                                <dd>Specify piercing power (peak value).</dd>
                                <dd>(Setting range: 0 to 9999, Unit: W)</dd>
                            <dt>freq</dt>
                                <dd>Specify piercing frequency.</dd>
                                <dd>(Setting range: 5 to 2000, Unit: Hz)</dd>
                            <dt>duty</dt>
                                <dd>Specify piercing duty.</dd>
                                <dd>(Setting range: 0 to 100, Unit: %)</dd>
                            <dt>pier_t</dt>
                                <dd>Specify piercing time.</dd>
                                <dd>(Setting range: 0 to 999999, Unit: 0.001sec.)</dd>
                            <dt>g_press</dt>
                                <dd>Specify piercing gas press(assist gas pressure)</dd>
                                <dd>(Setting range: 0 to 255, Unit: 0.1Kg/cm2)</dd>
                            <dt>g_kind</dt>
                                <dd>Specify piercing gas select(kind of assist gas)</dd>
                                <dd>(Setting range: 1 to 7, Unit: kind)</dd>
                            <dt>r_len</dt>
                                <dd>Specify recovery distance.</dd>
                                <dd>(Setting range: 0 to 99999, Unit: 0.001mm)</dd>
                            <dt>r_feed</dt>
                                <dd>Specify recovery feedrate.</dd>
                                <dd>(Setting range: 0 to 9999, Unit: mm/min)</dd>
                            <dt>r_freq</dt>
                                <dd>Specify recovery frequency.</dd>
                                <dd>(Setting range: 5 to 2000, Unit: Hz)</dd>
                            <dt>r_duty</dt>
                                <dd>Specify recovery duty.</dd>
                                <dd>(Setting range: 0 to 100, Unit: %)</dd>
                            <dt>gap</dt>
                                <dd>Specify deflection/gap.</dd>
                                <dd>(Setting range: -32767 to 32767)</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 edge cutting 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 edge cutting 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 judge angle for edge</td></tr>
                    <tr><td>2</td><td>:</td><td>Error of piercing power</td></tr>
                    <tr><td>3</td><td>:</td><td>Error of piercing frequency</td></tr>
                    <tr><td>4</td><td>:</td><td>Error of piercing duty</td></tr>
                    <tr><td>5</td><td>:</td><td>Error of piercing time</td></tr>
                    <tr><td>6</td><td>:</td><td>Error of piercing gas press</td></tr>
                    <tr><td>7</td><td>:</td><td>Error of piercing gas select</td></tr>
                    <tr><td>8</td><td>:</td><td>Error of recovery distance</td></tr>
                    <tr><td>9</td><td>:</td><td>Error of recovery feedrate</td></tr>
                    <tr><td>10</td><td>:</td><td>Error of recovery frequency</td></tr>
                    <tr><td>11</td><td>:</td><td>Error of recovery duty</td></tr>
                    <tr><td>12</td><td>:</td><td>Error of deflection/gap</td></tr>
                </table>
            </content>
        </item>
        <item>
            <name>EW_NOOPT</name>
            <content>
                No option<br/>
                The cutting condition setting function, the edge cutting 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>
                <li>The cutting condition setting function</li>
                <li>The edge cutting function</li>
        </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_rdpscdedge</name>
            <file>Laser/cnc_rdpscdedge.htm</file>
        </item>
    </reference>



    <example>
    </example>



  </func>
</root>
