{"id":200,"date":"2022-09-24T13:08:23","date_gmt":"2022-09-24T04:08:23","guid":{"rendered":"https:\/\/www.ssil.co.jp\/product\/EMSolution\/en2\/?post_type=case&#038;p=200"},"modified":"2022-09-24T20:44:40","modified_gmt":"2022-09-24T11:44:40","slug":"motor_switch","status":"publish","type":"case","link":"https:\/\/www.ssil.co.jp\/product\/EMSolution\/en\/case\/motor_switch\/","title":{"rendered":"Analysis of DC brushless servo motors (using switch function)"},"content":{"rendered":"<h3>Summary<\/h3>\n<p>We have added a switch function to the NETWORK module of EMSolution. To verify this, we have analyzed the benchmark problem of DC brushless servo motors published by the Institute of Electrical Engineers of Japan (IEEJ) [Ref].  <\/p>\n<h3>Explanation<\/h3>\n<p>The analytical model is shown in Fig. 1. The model is a two-dimensional analysis with an axial length of 37.5 mm. The 1\/4 region is analyzed using symmetry. The 90-degree antisymmetric periodic boundary condition is used. The gap between the stator and rotor is 0.8 mm and divided into 4 layers, equally divided by 1 degree in the circumferential direction. A sliding plane is set at the center of the gap to simulate rotational motion. The number of turns in each stator slot is set to 100 and the phase order is given as shown in the figure. The rotor position in Fig. 1 is set at an electrical angle of 0\u00b0, and the rotation is clockwise in the figure. The magnets are assumed to be uniformly magnetized to 0.9T, and the material properties such as B-H curves are as in the literature. The time step is defined as the time interval of 1 degree rotation.  <\/p>\n<div class=\"img col1\">\n<div>\n        <a href=\"\/product\/EMSolution\/en\/wp-content\/uploads\/motor_switch01.png\" class=\"modal\"><br \/>\n        <img decoding=\"async\" src=\"\/product\/EMSolution\/en\/wp-content\/uploads\/motor_switch01.png\" alt=\"\" \/><\/a><br \/>\n<!--        \n\n<p class=\"text01\">Fig.1\u3000\u89e3\u6790\u30e2\u30c7\u30eb\u3068\u30e1\u30c3\u30b7\u30e5<\/p>\n\n--><\/p>\n<p style=\"text-align:center\">Fig. 1 Analysis model and mesh<\/p>\n<\/p><\/div>\n<\/div>\n<p>Fig. 2 shows the electrical equivalent circuit used in the analysis. It is assumed that the voltage sources (Vu, Vv, Vw) are given $30 V$ dc voltages. The On (closed) and Off (open) states of the switches (Su1, Su2, Sv1, Sv2, Sw1, Sw2) for each phase with respect to the electrical angle are shown in Fig. 3. When the first switch is On, a DC voltage is applied to the circuit, and when the second switch is On, the circuit conducts. Both switches are never in the On state. In the calculations, the switches are simulated with resistance values of 0 and 100 $k \\Omega$ for the On and Off state switches. For the winding resistance, the resistance values (Ru, Rv, Rw) are assumed to be equal, and the average value of the measured values is $7.9567\\Omega$.  <\/p>\n<div class=\"img col2\">\n<div>\n        <a href=\"\/product\/EMSolution\/en\/wp-content\/uploads\/motor_switch02.png\" class=\"modal\"><br \/>\n        <img decoding=\"async\" src=\"\/product\/EMSolution\/en\/wp-content\/uploads\/motor_switch02.png\" alt=\"\" \/><\/a><br \/>\n<!--        \n\n<p class=\"text01\">Fig.2\u3000\u96fb\u6c17\u7b49\u4fa1\u56de\u8def<\/p>\n\n--><\/p>\n<p style=\"text-align:center\">Fig.2 Electrical equivalent circuit<\/p>\n<\/p><\/div>\n<div>\n        <a href=\"\/product\/EMSolution\/en\/wp-content\/uploads\/motor_switch03.png\" class=\"modal\"><br \/>\n        <img decoding=\"async\" src=\"\/product\/EMSolution\/en\/wp-content\/uploads\/motor_switch03.png\" alt=\"\" \/><\/a><br \/>\n<!--        \n\n<p class=\"text01\">Fig.3\u3000\u5404\u30b9\u30a4\u30c3\u30c1\u306eOn-Off\u72b6\u614b<\/p>\n\n--><\/p>\n<p style=\"text-align:center\">Fig.3 On-Off state of each switch<\/p>\n<\/p><\/div>\n<\/div>\n<p>Fig. 4 shows the analysis results of the current waveform when the applied voltage is 30 V and the rotation speed is 600 rpm. Since the current reaches a steady state at the second cycle of the electric angle, the result of the second cycle is shown. It can be seen that the current between the windings is flowing as expected.\u3000Fig.5 shows the case where the rotation speed is 1304.4 rpm (with no load). Fig. 6 shows the torque waveform. These results are in close agreement with the results of the analysis in [Ref]. For example, the average torque value is 0.215492 $Nm$ at 600 rpm (engine A) compared to 0.216 $Nm$ at 600 rpm (engine B) reported in [Ref]. (In [Ref.], a discrepancy between the experimental and analytical values is reported due to the strength of the magnetization of the permanent magnet. Here we compare it with the analytical value under the same calculation conditions.)  <\/p>\n<div class=\"img col2\">\n<div>\n        <a href=\"\/product\/EMSolution\/en\/wp-content\/uploads\/motor_switch04.png\" class=\"modal\"><br \/>\n        <img decoding=\"async\" src=\"\/product\/EMSolution\/en\/wp-content\/uploads\/motor_switch04.png\" alt=\"\" \/><\/a><br \/>\n<!--        \n\n<p class=\"text01\">Fig.4\u3000\u5dfb\u7dda\u96fb\u6d41\u6ce2\u5f62<br \/>\uff08600rpm\u3001\u5370\u53ef\u96fb\u572730V\uff09<\/p>\n\n--><\/p>\n<p style=\"text-align:center\">Fig.4 Winding current waveform <br \/>(600 rpm, applied voltage 30V)<\/p>\n<\/p><\/div>\n<div>\n        <a href=\"\/product\/EMSolution\/en\/wp-content\/uploads\/motor_switch05.png\" class=\"modal\"><br \/>\n        <img decoding=\"async\" src=\"\/product\/EMSolution\/en\/wp-content\/uploads\/motor_switch05.png\" alt=\"\" \/><\/a><br \/>\n<!--        \n\n<p class=\"text01\">Fig.5\u3000\u5dfb\u7dda\u96fb\u6d41\u6ce2\u5f62<br \/>\uff081304.4rpm\u3001\u5370\u53ef\u96fb\u572730V\uff09<\/p>\n\n--><\/p>\n<p style=\"text-align:center\">Fig.5 Winding current waveform <br \/>(1304.4 rpm, applied voltage 30V)<\/p>\n<\/p><\/div>\n<div>\n        <a href=\"\/product\/EMSolution\/en\/wp-content\/uploads\/motor_switch06.png\" class=\"modal\"><br \/>\n        <img decoding=\"async\" src=\"\/product\/EMSolution\/en\/wp-content\/uploads\/motor_switch06.png\" alt=\"\" \/><\/a><br \/>\n<!--        \n\n<p class=\"text01\">Fig.6\u3000\u30c8\u30eb\u30af\u6ce2\u5f62\uff08\u5370\u53ef\u96fb\u572730V\uff09<\/p>\n\n--><\/p>\n<p style=\"text-align:center\">Fig.6 Torque waveform (applied voltage 30V)<\/p>\n<\/p><\/div>\n<\/div>\n<p>The switches here are handled by the time variation of the resistance value. In the current case, the resistance at Off was analyzed as 100 $ k \\Omega$. The voltage peak occurs at current interruption.<br \/>\nFor example, the induced EMF waveform in this benchmark problem is shown in Fig. 7. (The vertical axis of Fig. 7 is different from that of the induced EMF waveform reported in [Ref]. Here, the induced electromotive force for all turns of each phase is shown). The width and height of the voltage peaks are considered to depend on the calculation time step. The current transfer is considered to occur in a shorter time than the analysis time step, so a sufficiently small time step is required to see the details. Fig. 8 shows a comparison of the total power supplied to the coil obtained from the coil induced voltage and coil current, and the power supply output minus the resistance (including winding resistance) loss. In both cases, the output current and voltage were simply added at each step and averaged.<br \/>\nThe two should be the same, but in this case, the former is about 4% smaller on average. This difference occurs during transients when spikes occur. Although the two values are in good agreement except during current transients, this is considered insufficient for the analysis of the spikes themselves. The mechanical work rate obtained by the torque agrees very well with that obtained by the coil induced voltage and coil current in the former case.  <\/p>\n<div class=\"img col2\">\n<div>\n        <a href=\"\/product\/EMSolution\/en\/wp-content\/uploads\/motor_switch07.png\" class=\"modal\"><br \/>\n        <img decoding=\"async\" src=\"\/product\/EMSolution\/en\/wp-content\/uploads\/motor_switch07.png\" alt=\"\" \/><\/a><br \/>\n<!--        \n\n<p class=\"text01\">Fig.7\u3000\u8a98\u5c0e\u8d77\u96fb\u529b\u6ce2\u5f62\uff08600rpm,\u5370\u53ef\u96fb\u572730V\uff09<\/p>\n\n--><\/p>\n<p style=\"text-align:center\">Fig.7 Induced EMF waveform (600 rpm, applied voltage 30V)<\/p>\n<\/p><\/div>\n<div>\n        <a href=\"\/product\/EMSolution\/en\/wp-content\/uploads\/motor_switch08.png\" class=\"modal\"><br \/>\n        <img decoding=\"async\" src=\"\/product\/EMSolution\/en\/wp-content\/uploads\/motor_switch08.png\" alt=\"\" \/><\/a><br \/>\n<!--        \n\n<p class=\"text01\">Fig.8\u3000 \u30b3\u30a4\u30eb\u4f9b\u7d66\u96fb\u529b<\/p>\n\n--><\/p>\n<p style=\"text-align:center\">Fig.8 Power supplied to coil<\/p>\n<\/p><\/div>\n<\/div>\n<p>As described above, we hope that you understand that the above is fully applicable to the analysis of this brushless motor, although there are some problems during switching. We believe it can also be applied to circuits containing other switches.  <\/p>\n<p>The function of this switch will be released from EMSolution ver9.8.1. We hope you will make use of it. Please note that this function requires the NETWORK module.  <\/p>\n<h3>References<\/h3>\n<p>Technical Report of the Institute of Electrical Engineers of Japan, No. 565, &quot;Advanced Numerical Simulation Techniques for Electromagnetic Fields in Rotating Machines,&quot; October 1995.  <\/p>\n<p><!--more--><\/p>\n<h3>How to use<\/h3>\n<p>The switch function works only in transient analysis. When using the switch function, set THETA_NETWORK=1 (backward difference) in the convergence conditions of Section 5 in the handbook.\u3000If set to 0.5 (central difference), the solution will oscillate. Enter the switch as an element of NETWORK. The input data is as follows.  <\/p>\n<ul>\n<li>SWITCH    :   Title  <\/li>\n<li>ID        :   Element identification number  <\/li>\n<li>NODE1     :   Starting node number  <\/li>\n<li>NODE2     :   Endpoint node number  <\/li>\n<li>ON_RES    :   Resistance ($\\Omega$) when On (closed)  <\/li>\n<li>OFF_RES   :   Resistance ($\\Omega$) at Off (open)   <\/li>\n<li>NO_DATA   :   Number of On time sections  <\/li>\n<li>CYCLE     :   Period (s), if zero, no periodicity is assumed  <\/li>\n<li>PHASE_OP  :   =0, real time input  <\/li>\n<li>ON_TIME   :   On start time  <\/li>\n<li>OFF_TIME  :   On end time<br \/>\n<font color=\"Red\">(Caution)<\/font><br \/>\n<font color=\"Red\"><em> If CYCLE is entered, ON_TIME $\\geqq$ , OFF_TIME $\\Leftarrow$ CYCLE<\/font><br \/>\n<font color=\"Red\"><\/em> ON_TIME $&lt;$ OFF_TIME, data shall be in ascending order in time.<\/font>  <\/li>\n<\/ul>\n<p>NETWORK data for Fig.2 and 3 are as follows. The node number corresponds to the number in Fig. 2, and CYCLE is one cycle of the electric angle (0.05sec).  <\/p>\n<p class=\"slideText\"><span>* NETWORK * REGION_FACTOR *                              <\/span><br \/>\n<span>   NETWORK               4.0                              <\/span><br \/>\n<span>* FEM * ID * NODE1 * NODE2 * SERIED_ID *                  <\/span><br \/>\n<span>   FEM   11         1             11               1      <\/span><br \/>\n<span>*  R  * ID * NODE1 * NODE2 * RESISTANCE *                 <\/span><br \/>\n<span>    R    12       11            12             7.9567     <\/span><br \/>\n<span><font color=\"Red\">* SWITCH * ID * NODE1 * NODE2 * ON_RES * OFF_RES *<\/font>                           <\/span><br \/>\n<span><font color=\"Red\">   SWITCH   13        12            13             0.0         100000<\/font>        <\/span><br \/>\n<span><font color=\"Red\">* NO_DATA * CYCLE * PHASE_OP *  TIME_ID *<\/font>                                    <\/span><br \/>\n<span><font color=\"Red\">           1             0.05            1                    0<\/font>              <\/span><br \/>\n<span><font color=\"Red\">* ON_TIME * OFF_TIME *<\/font>                                                       <\/span><br \/>\n<span><font color=\"Red\">        210               330<\/font>                                                <\/span><br \/>\n<span><font color=\"Red\">* SWITCH * ID * NODE1 * NODE2 * ON_RES * OFF_RES *<\/font>                           <\/span><br \/>\n<span><font color=\"Red\">   SWITCH   14        12             2               0.0         100000<\/font>      <\/span><br \/>\n<span><font color=\"Red\">* NO_DATA * CYCLE * PHASE_OP *  TIME_ID *<\/font>                                    <\/span><br \/>\n<span><font color=\"Red\">           1             0.05            1                    0<\/font>              <\/span><br \/>\n<span><font color=\"Red\">* ON_TIME *  OFF_TIME  *<\/font>                                                     <\/span><br \/>\n<span><font color=\"Red\">         30               150<\/font>                                                <\/span><br \/>\n<span>* VPS * ID * NODE1 * NODE2 * TIME_ID *                    <\/span><br \/>\n<span>   VPS   15        13              2               3      <\/span><br \/>\n<span>* FEM * ID * NODE1 * NODE2 * SERIED_ID *                  <\/span><br \/>\n<span>   FEM   21         1             21               2      <\/span><br \/>\n<span>*  R  * ID * NODE1 * NODE2 * RESISTANCE *                 <\/span><br \/>\n<span>    R    22       21            22             7.9567     <\/span><br \/>\n<span><font color=\"Red\">* SWITCH * ID * NODE1 * NODE2 * ON_RES * OFF_RES *<\/font>                           <\/span><br \/>\n<span><font color=\"Red\">   SWITCH   23        22            23               0.0         100000<\/font>      <\/span><br \/>\n<span><font color=\"Red\">* NO_DATA * CYCLE * PHASE_OP *  TIME_ID *<\/font>                                    <\/span><br \/>\n<span><font color=\"Red\">           2             0.05            1                    0<\/font>              <\/span><br \/>\n<span><font color=\"Red\">* ON_TIME * OFF_TIME *<\/font>                                                       <\/span><br \/>\n<span><font color=\"Red\">            0                  90<\/font>                                            <\/span><br \/>\n<span><font color=\"Red\">        330               360<\/font>                                                <\/span><br \/>\n<span><font color=\"Red\">* SWITCH  * ID * NODE1 * NODE2 * ON_RES * OFF_RES *<\/font>                          <\/span><br \/>\n<span><font color=\"Red\">   SWITCH   24        22             2               0.0         100000<\/font>      <\/span><br \/>\n<span><font color=\"Red\">* NO_DATA * CYCLE * PHASE_OP *  TIME_ID *<\/font>                                    <\/span><br \/>\n<span><font color=\"Red\">           1             0.05            1                    0<\/font>              <\/span><br \/>\n<span><font color=\"Red\">* ON_TIME * OFF_TIME *<\/font>                                                       <\/span><br \/>\n<span><font color=\"Red\">        150               270<\/font>                                                <\/span><br \/>\n<span>* VPS * ID * NODE1 * NODE2 * TIME_ID *                    <\/span><br \/>\n<span>   VPS   25        23              2               3      <\/span><br \/>\n<span>* FEM * ID * NODE1 * NODE2 * SERIED_ID *                  <\/span><br \/>\n<span>   FEM   31         1             31               3      <\/span><br \/>\n<span>*  R  * ID * NODE1 * NODE2 * RESISTANCE *                 <\/span><br \/>\n<span>    R    32        31           32             7.9567     <\/span><br \/>\n<span><font color=\"Red\">* SWITCH * ID * NODE1 * NODE2 * ON_RES * OFF_RES *<\/font>                           <\/span><br \/>\n<span><font color=\"Red\">   SWITCH   33        32            33               0.0         100000<\/font>      <\/span><br \/>\n<span><font color=\"Red\">* NO_DATA * CYCLE * PHASE_OP *  TIME_ID *<\/font>                                    <\/span><br \/>\n<span><font color=\"Red\">           1             0.05            1                    0<\/font>              <\/span><br \/>\n<span><font color=\"Red\">* ON_TIME * OFF_TIME *<\/font>                                                       <\/span><br \/>\n<span><font color=\"Red\">         90               210<\/font>                                                <\/span><br \/>\n<span><font color=\"Red\">*  SWITCH  * ID * NODE1 * NODE2 * ON_RES * OFF_RES *<\/font>                         <\/span><br \/>\n<span><font color=\"Red\">   SWITCH   34        32             2               0.0         100000<\/font>      <\/span><br \/>\n<span><font color=\"Red\">* NO_DATA * CYCLE * PHASE_OP *  TIME_ID *<\/font>                                    <\/span><br \/>\n<span><font color=\"Red\">           2             0.05            1                    0<\/font>              <\/span><br \/>\n<span><font color=\"Red\">* ON_TIME   *   OFF_TIME  *<\/font>                                                  <\/span><br \/>\n<span><font color=\"Red\">            0                  30<\/font>                                            <\/span><br \/>\n<span><font color=\"Red\">        270               360<\/font>                                                <\/span><br \/>\n<span>* VPS * ID * NODE1 * NODE2 * TIME_ID *                    <\/span><br \/>\n<span>   VPS   35        33              2               3      <\/span><br \/>\n<span>* END NETWORK *                                           <\/span><br \/>\n<span>           END                                            <\/span>\n<\/p>\n<p>In the above example, the On-Off time is given in phase (time zero is phase zero) for one cycle, but it can be given in real time as follows  <\/p>\n<p class=\"slideText\"><span>* SWITCH * ID * NODE1 * NODE2 * ON_RES * OFF_RES *<\/span><br \/>\n<span>   SWITCH   13        12            13               0           100000<\/span><br \/>\n<span>* NO_DATA *   CYCLE   * PHASE_OP <font color=\"Red\">*  TIME_ID *<\/font><\/span><br \/>\n<span>         2                0.05                 0                   <font color=\"Red\">0<\/font><\/span><br \/>\n<span><font color=\"Red\">*       ON_TIME       *       OFF_TIME       *<\/font><\/span><br \/>\n<span><font color=\"Red\">      0.029166667          0.045833333<\/font><\/span><br \/>\n<span><font color=\"Red\">      0.079166667          0.095833333<\/font><\/span>\n<\/p>\n<h3>Download<\/h3>\n<h4>Analysis Model<\/h4>\n<p><button type=\"button\" class=\"btn btn-danger btn-lg\"><a href=\"https:\/\/www.ssil.co.jp\/product\/EMSolution\/en\/wp-content\/uploads\/motor-switch.zip\">Sample data DL<\/a><\/button>  <\/p>\n<p>\u30fb input_600rpm<br \/>\nTo change the rotation speed, CYCLE in SWITCH must be changed.<br \/>\n\u30fb input_cycle_600rpm<br \/>\n\u3000\u3000\u3000\u3000Input data (using CURCUIT) for step input by repeating the time table as shown in <a href=\"\/product\/EMSolution\/en\/case\/powersource\/\" target=\"_blank\" rel=\"noopener noreferrer\" style=\"display:inline\"><font color=\"Red\">&quot;Improvement of Power Supply Input Method\u201d (improved in EMSolution r9.8.2)&quot;<\/font><\/a>.<br \/>\n\u30fb pre_geom2D.neu<br \/>\n\u30fb rotor_mesh2D.neu  <\/p>\n","protected":false},"excerpt":{"rendered":"<p>Summary We have added a switch function to the NETWORK module of EMSolution. To verify this, we have analyzed the benchmark problem of DC brushless servo motors published by the Institute of Electrical Engineers of Japan (IEEJ) [Ref]. Explanation The analytical model is shown in Fig. 1. The model is a two-dimensional analysis with an [&hellip;]<\/p>\n","protected":false},"featured_media":0,"template":"","tags":[],"case_cat":[18],"class_list":["post-200","case","type-case","status-publish","hentry","case_cat-eikyumotor"],"acf":[],"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/www.ssil.co.jp\/product\/EMSolution\/en\/wp-json\/wp\/v2\/case\/200"}],"collection":[{"href":"https:\/\/www.ssil.co.jp\/product\/EMSolution\/en\/wp-json\/wp\/v2\/case"}],"about":[{"href":"https:\/\/www.ssil.co.jp\/product\/EMSolution\/en\/wp-json\/wp\/v2\/types\/case"}],"version-history":[{"count":7,"href":"https:\/\/www.ssil.co.jp\/product\/EMSolution\/en\/wp-json\/wp\/v2\/case\/200\/revisions"}],"predecessor-version":[{"id":4831,"href":"https:\/\/www.ssil.co.jp\/product\/EMSolution\/en\/wp-json\/wp\/v2\/case\/200\/revisions\/4831"}],"wp:attachment":[{"href":"https:\/\/www.ssil.co.jp\/product\/EMSolution\/en\/wp-json\/wp\/v2\/media?parent=200"}],"wp:term":[{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.ssil.co.jp\/product\/EMSolution\/en\/wp-json\/wp\/v2\/tags?post=200"},{"taxonomy":"case_cat","embeddable":true,"href":"https:\/\/www.ssil.co.jp\/product\/EMSolution\/en\/wp-json\/wp\/v2\/case_cat?post=200"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}