Inter national J our nal of Recongurable and Embedded Systems (IJRES) V ol. 15, No. 2, July 2026, pp. 339 349 ISSN: 2089-4864, DOI: 10.11591/ijres.v15.i2.pp339-349 339 Congurable embedded solution f or multi-mode motor contr ol Ufuk G ¨ uner Department of Electrical and Electronic Engineering, F aculty of Engineering and Architecture, Erzurum T echnical Uni v ersity , Erzurum, T urk e y Article Inf o Article history: Recei v ed Dec 18, 2025 Re vised Feb 23, 2026 Accepted May 30, 2026 K eyw ords: Brushless direct current motor Direct current motor Motor type identication Multi-mode motor dri v e Stepper motor ABSTRA CT Precise robotic systems often require multiple motor types, which increases hardw are comple xity , cost, and synchronization ef fort. This study present s an open-source multi-mode motor control platform based on four half-bridge po wer stages, enabling direct current (DC), brushless direct current (BLDC), and step- per motor control on a single hardw are architecture. Unlik e e xisting softw are- based multi-mode approaches, the proposed system intr oduces automatic motor type identi cation and safe connection v erication at the hardw are le v el, re- quiring only a microcontroller and a inte grated po wer stage. This represents a k e y no v elty of the platform. Experimental v alidation w as performed using three dif ferent motor types. The system achie v ed correct motor classication o v er re- peated i dentication tests, with no f alse detections. Position control e xperiments conrmed stable operation across DC, BLDC, and stepper motor . The results demonstrate that the proposed platform signicantly reduces system comple x- ity while pro viding reliable multi-motor operation in a compact and lo w-cost structure. This is an open access article under the CC BY -SA license . Corresponding A uthor: Ufuk G ¨ uner Department of Electrical and Electronic Engineering, F aculty of Engineering and Architecture Erzurum T echnical Uni v ersity Erzurum, T urk e y Email: ufuk.guner@erzurum.edu.tr 1. INTR ODUCTION Direct current (DC)-dri v en actuators are used e xtensi v ely in robotics, electric cars, and automati on. The most commonly used actuators in these elds are DC, stepper , and brushless direct current (BLDC)/ permanent magnet synchronous motor (PMSM) motors. These motors require separate dri v e hardw are and softw are for optimal performance due to dif ferent dri ving principles, current control strate gies, and feedback requirements [1]. This situation leads to the construction of comple x hardw are structures, especially in proto- typing and e xperimental studies where dif ferent types of motors are used together . Hardw are-wise, these motors can be dri v en using dif ferent half-bridge po wer switching unit t opolo- gies, disre g arding motor po wer . While DC motors are dri v en by a simple full-bridge [2], PMSM/BLDC motors require precise current and position feedback along with three half-bridges [3]. On the other hand, stepper motors require tw o full-bridges and chopper current control [4]. Therefore, although the basic hardw are is a half-bridge, each motor type requires dif ferent hardw are optimization and control infrastructures. Additionally , po wer dif ferences between the same motor types also necessitate a change in the po wer stage. Research on motor dri v e s ystems has generally focused on de v eloping control methods specic to J ournal homepage: http://ijr es.iaescor e .com Evaluation Warning : The document was created with Spire.PDF for Python.
340 ISSN: 2089-4864 the motor type. Specically , sensorless and adapti v e control strate gies for BLDC motors are comprehensi v ely addressed with the goal of achie ving high ef cienc y and dynamic performance [5], [6]. Sliding mode and com- bined control approaches are recommended for stepper motors [7]. Con v erter -based adapti v e [8] and embedded control softw are is of fered for DC motors [9]. These studies of fer signicant contrib utions in terms of control algorithms. Ho we v er , the studies are based on dri v e architectures specic to motor type. In studies on the control of mult iple motors, the general aim is to synchronize the dri ving of multiple same type motors [10]–[12] with the same type system architectures. Such as, FPGA-based multi-motor control platforms for electric v ehicles and industrial applications [13]. Ho we v er , in these systems, it is also assumed that the motor types are homogeneous. Therefore, current multi-motor control studies do not address the issue of operating dif ferent motor types together . A signicant portion of the w ork on systems supporting dif ferent motor types is based on softw are libraries or FPGA-based recongurable architectures. Librar ies such as SimpleFOC [14] and STM32 motor control SDK [15] of fer common control algorithms for DC, BLDC, and stepper motors in microcontroller - based solutions . Ho we v er , the po wer dri v er stages must be designed or added separately according to the motor type. In FPGA-based systems, hardw are control cores can be implemented for dif ferent motor with selecting the po wer stage according to the motor type [16], [17]. Although these approaches of fer e xibility in control design, critical aspects such as po wer le v el conguration, current limiting, motor type identication, and safe connection management are left entirely to the user . This situation poses a si gn i cant limitation, especially for robotic systems where dif ferent types of ac- tuators are used together , e xperimental control studies, and R&D applications requiring rapid prototyping. The requirement for separate dri v ers and dif ferent po wer t opologies for each motor type e xtends system inte gration time, increases costs, and mak es it dif cult to compare and e v aluate control algorithms. The best approach to solving this problem is multi-mode motor dri v e approximation on the same hardw are. On the other hand, designing multi-mode motor control on the same platform als o brings with it some problems. T o ensure opti- mal control specic to the motor type, hardw are deciencies must be addressed through embedded softw are. Magnetic zero and direction determination are required for BLDC motors [18]. Current l imiting capability must be pro vided for stepper motors. The control algorithm and motor type must be matched. Ev en if this match is determined by the user , incorrect entries should be considered. Applying the wrong control mode can lead to serious safety risks, including high current, o v erheating, and uncontrolled torque generation [19]. It is also quite dif cult to support a wide range of motor po wer . This study proposes a platform that utilizes an open-source multi-mode motor dri v e architecture b uilt around a microcontroller . The proposed platform aims to control DC, BLDC, and stepper motors as serv os on the same hardw are. An inte grated circuit is used for dri ving DC, BLDC, or stepper motors. The inte grated cir - cuit contains four half-bridge channels. The inte grated circuit pro vides current feedback from each channel. In the study , mo ving a v erage lteri ng is applied within direct memory access (DMA) for f ast and ef fecti v e current measurement. The po wer stage has a single current limit input for all bridges. A digital-to-analog con v erter (D A C) is used for dynamic current limiting. In softw are optimization, special algorithms ha v e been de v eloped for dif ferent motor types, considering hardw are capabilities. An algorithm for determining the direction and magnetic zero for the BLDC motor w as de v eloped using feedback from the encoder . F or the stepper motor , closed-loop control with encoder feedback w as implemented to o v ercome the lack of a current chopper . An additional decision algorithm has also been inte grated into the system to determine the motor type and acti v ate the appropriate controller . Embedded softw are supports data collection, paramet er adjus tment, and real-time simulation inte gration. In this respect, the proposed system of fers a unied hardw are-softw are co-design archi- tecture that supports heterogeneous motor types on a single po wer stage, in contrast to the com mon approach in the literature of a dedicated dri v er per motor type. Furthermore, it allo ws for the determination of motor type and acti v e channels, which is a weakness of softw are-based multi-mode motor control solutions. The pro- posed platform pro vides a lo w-cost, f ast, and recongurable solution for comparati v e testing of heterogeneous multi-motor mechatronic systems, educational laboratory infrastructure, and control algorithms. 2. HARD W ARE CONFIGURA TION The core of the system is the STM32F405RB microcontroller unit (MCU), which pro vides high pro- cessing po wer and e xtensi v e peripheral support. The MCU is responsible for PWM generation, current and v olt- age measurement, data communication, and e x ecuting control algorithms. The system uses the DR V8962DD W Int J Recongurable & Embedded Syst, V ol. 15, No. 2, July 2026: 339–349 Evaluation Warning : The document was created with Spire.PDF for Python.
Int J Recongurable & Embedded Syst ISSN: 2089-4864 341 four half-bridge motor dri v er inte grated circuit as the motor po wer stage [20]. The connections between the MCU and the po wer stage are arranged to include control and feedback signals. F igure 1 sho ws design of the multi-mode motor control platform. Motor supply is applied directly to the po wer stage. Figure 1. Design of the multi-mode dri v er The MCU, on the other hand, is po wered independently from the motor dri v er via USB. Feedback from the motors includes current and b us v oltage, as well as position and speed information. There are tw o quadratic encoder inputs. Additionally , there is an e xtra input for encoders that has serial peripheral interf ace (SPI). Encoder data is used in the closed-loop control algorithms. The block diagram of the proposed multi- mode motor controller is sho wn in Figure 2. Figure 2. Block diagram of multi-mode motor control The po wer stage pro vides current feedback from the high-side of each half-bridge [20]. The current feedback outputs are connected to the MCU’ s analog-to-digital con v erter (ADC) unit. The MCU performs ADC readings using DMA. Measurements are ltered with the mo ving a v erage on the DMA. The current reference for the po wer stage is connected to the MCU’ s D A C output. The MCU can dynamically adjust the current limit via the D A C. The e xternal unit connection of the system is achie v ed using the MCU’ s internal USB i nterf ace. W ith the USB connection, the MCU can be connected to MA TLAB or similar simulation en vironments. In this study , a MA TLAB user interf ace is used. Control parameters, tar get position, current limits, and other parameters can be sent to the platform via the USB interf ace. Real-time data is recei v ed o v er the same connection. 3. CONTR OL ALGORITHMS The algorithm initially w aits for parameters and commands from the user . In this s tudy , the MA TLAB en vironment w as used for user input. When commands and parameters arri v e from the user , the algorithm rst performs the function of determining the motor type and acti v e channels. If there are no errors or incompatible motors at this stage, the motor rotation direction is determined according to the motor connections. Subse- quently , the rele v ant motor control layer is acti v ated. Motor control performs tw o time-dependent process. The Congur able embedded solution for multi-mode motor contr ol (Ufuk G ¨ uner) Evaluation Warning : The document was created with Spire.PDF for Python.
342 ISSN: 2089-4864 rst process is motor control stage. It is dif ferent for each motor and repeats with a period of T c at timer c . The second function is the data transfer process. It is the same for each m otor and repeats with a period of T m at timer m . The parameters T c and T m are user -adjustable. 3.1. Dir ect curr ent motor contr ol algorithm Algorithm 1 sho ws the DC motor dri v e algorithm. The DC motor is dri v en by tw o pulse width mod- ulation (PWM) outputs through the tw o half-bridges of the po wer stage. The direction of motor rotation is determined by the polarity of the PWM signals. A linear relationship can be established between motor cur - rent, PWM duty c ycle, and torque [21]. The control algorithm is based on closed-loop position control. Speed and positi on information are obtained fr o m encoders. In each control c ycle, the dif ference between the tar - get position ( pos r ef ) and the measured position ( pos ) is processed by a proportional inte gral deri v ati v e (PID) controller . The controller output is passed to the proportional inte gral (PI) current control layer as the current reference ( I r ef ). The PI controller output ( u I ) and the source v oltage ( V bus ) det ermine the PWM duty c ycle. In this structure, the internal current limit ( I pk ) of the po wer stage is adjusted by the D A C. A short pulse and encoder response are used to determine the motor direction. All PID and PI parameters are user -adjustable. Algorithm 1. DC motor dri v e 1: I pk Set current limit with DAC 2: Initialize power stage 3: Initialize parameters 4: Detect rotation direction 5: loop 6: if timer c T c then 7: ( pos, v el ) ReadENC () 8: ( I r [] , V bus ) ReadADC FDMA () 9: I r ef CalcPIDPos( pos, pos r ef ) 10: u I CalcPI( I r [] , I r ef ) 11: P W M T I M 2 CalcPWM( u I , V bus ) 12: end if 13: if timer m T m then 14: SendUSBData( I r [] , pos, v el , v bus ) 15: end if 16: end loop 3.2. Stepper motor contr ol algorithm The stepper motor dri v e is sho wn in Algorithm 2. The hardw are has the capability to dri v e a bipolar stepper motor . Ho we v er it does not channel-based chopper control. T o o v ercome this decienc y , position feedback and PID control are utilized. In stepper motor control, the four half-bridges of the po wer stage are connected to the tw o phases of the motor . Each phase current is modulated according to a sinusoidal reference prole. The motor windings are e xcited with a phase dif ference of 90 de grees [22]. It is possible to create micro-step by di viding the phase into smaller steps [23]. F or this, a predened sinusoidal microstep lookup table (LUT) is used. LUT is scalable from 4 to 128 microsteps by the user . The motor shaft angle and speed are measured. The motor angle ( pos ) and the reference position ( pos r ef ) are passed through the PID controller . The controller output pro vides the step speed reference ( w r ef ). By con v erting the speed reference to an angle command ( θ cmd ), the LUT inde x ( idx ) is calculated [24]. The sinusoidal references ( s Q , c Q ) obtained from LUT are con v erted into PWM ratios. Control and LUT parameters are user -adjustable. 3.3. Brushless dir ect curr ent motor contr ol algorithm BLDC control is the most adv anced control layer of the system. The BLDC motor control is sho wn in Algorithm 3. The proposed platform is designed to be suitable for three-phase motor dri ving. Ho we v er , the motor’ s magnetic zero and direction must be determined in the multi-mode control. This can be done in tw o w ays. The encoder start can be mechanically aligned to magnetic zero, or a relati v e magnetic zero can be determined by applying a 2 π / 3 radian phase dif ference pulse. F or motor direction, a short pulse and encoder response are used. While the three half-bridges of the po wer s tage directly dri v e the three phases, eld-oriented control (FOC) with position feedback is implemented in the softw are [25]. FOC includes current and position loops with a cascaded structure. By applying Clark e–P ark transformations, the phase currents are transformed to the d–q axis ( i d , i q ). PI-based current controllers generate v oltage references ( v d , v q ) in the d-q axis. These Int J Recongurable & Embedded Syst, V ol. 15, No. 2, July 2026: 339–349 Evaluation Warning : The document was created with Spire.PDF for Python.
Int J Recongurable & Embedded Syst ISSN: 2089-4864 343 references are con v erted to three-phase PWM v alues using the in v erse P ark ( v α , v β ) transformation [26]. Rotor position and speed are obtained from encoders. All control parameters are user -adjustable. Algorithm 2. Stepper motor dri v e 1: I pk Set current limit with DAC 2: Initialize power stage 3: Initialize parameters 4: Generate LUT 5: Detect rotation direction 6: loop 7: if timer c T c then 8: ( pos, v el ) ReadENC () 9: ( I r [] , V bus ) ReadADC FDMA () 10: ω r ef CalcPIDPos( pos, pos r ef ) 11: θ cmd CalcAngleCMD( ω r ef ); 12: idx CalcLUTIndex( θ cmd ); 13: s Q , c Q LUT( idx ) 14: P W M T I M 2 CalcPWM( s Q , c Q , g ain, V bus ) 15: end if 16: if timer m T m then 17: SendUSBData( I r [] , pos, v el , V bus ) 18: end if 19: end loop Algorithm 3. BLDC dri v e 1: I pk Set current limit with DAC 2: Initialize power stage 3: Initialize parameters 4: Detect magnetic zero 5: Detect rotation direction 6: loop 7: if timer c T c then 8: ( I r [] , V bus ) ReadADC FDMA () 9: θ m CalcMechanicalAngle() 10: i d r ef , i q r ef CalcPIDPos( θ m , θ r ef ) 11: FOC Update ( i d r ef , i q r ef ) 12: i a , i b I r [0] , I r [1] 13: i α , i β Clarke( i a , i b ) 14: θ e CalcElectricalAngle() 15: i d , i q Park( i α , i β , θ e ) 16: v d , v q CalcPI( i d r ef , i q r ef ) 17: v α , v β InversePark( v d , v q , θ e ) 18: P W M T I M 2 CalcPWM( v α , v β , V bus ) 19: end FOC Update 20: end if 21: if timer m T m then 22: SendUSBData( I r [] , pos, v el , V bus ) 23: end if 24: end loop 3.4. Motor type identication algorithm F or motor identication, short-duration and lo w-duty c ycle test pulses are applied to the dri v er output s. Feedback currents are measured. The po wer stage pro vides feedback from high side of half-bridge. Thus, it is possible to match acti v e channels with current measurement. This current measurements are used to create the current matrix B ij . The inde x i represents the channel being e xcited, and j represents the a v erage current v alue measured from the channel. A relati v e threshold v alue ϵ is used for analysis. ϵ = δ · ( I pk r ef ) , δ [0 . 5 , 0 . 9] (1) Congur able embedded solution for multi-mode motor contr ol (Ufuk G ¨ uner) Evaluation Warning : The document was created with Spire.PDF for Python.
344 ISSN: 2089-4864 where, δ is the proximity f actor that is used to grantee. The binary response matrix B ij dependent on the threshold v alue is dened as (2): B ij = ( 1 , max( I r [ j ] i ) ϵ, 0 , max( I r [ j ] i ) < ϵ. (2) In this case, B ij = 1 indicates a strong current response in channel j when channel i is stimulated. This reaction allo ws for m o t or identication and acti v e channel determination with Algorithm 4. As a result of this identication process, the system dynamically acti v ates the rele v ant control layer or the safe mode. Algorithm 4. Motor identication algorithm 1: I pk Set current limit with DAC 2: Initialize power stage 3: for i = 1 to 4 do 4: P W M T I M Set all channel to zero 5: P W M i Excite channel i 6: ( I r [] , V bus ) ReadADC FDMA () 7: for j = 1 to 4 do 8: if max( I r [ j ]) ϵ then B ij = 1 else B ij = 0 9: end for 10: end for 11: if P j = i B ij = 3 then 12: Motor type BLDC , active channels i : B ij = 1 13: else if P j = i B ij = 2 then 14: Motor type DC , active channels i : B ij = 1 15: else if P j = i B ij = 4 then 16: Motor type stepper , active channels i : B ij = 1 17: else if P j = i B ij = 0 then 18: Open Mode Disable Driver , No connection 19: end if 20: if Motor type ̸ = User type then 21: Safe Mode Disable Driver , Unmatched Motor 22: end if 4. V ALID A TION OF PLA TFORM T o v erify the platform, three test setups were establ ished. In the e xperimental setup, a 1000 pulses per re v oluti on 3-phase opt ical disk encoder and an AS5048 magneti c encoder wer e located on the s ame shaft. The magnetic encoder pro vides absolute position measurement with 14-bit resolution. The optical encoder w as connected to the quadratic encoder input of the MCU. The magnetic encoder w as connected to the MCU via the SPI b us. The angular position of the motor shaft w as measured with the magnetic encoder . The angular v elocity of the motor shaft w as measured with the optical encoder . A F aulhaber planetary geared motor w as used as a sample DC motor . The DC motor geared shaft is directly connected to sensor shaft. Figure 3 presents the e xperimental test setups used to v alidate the proposed motor algorithm for dif ferent motor types. Figure 3(a) sho ws the DC motor test setup. Figure 3(b) d e monstrates the stepper motor test bench. A NEMA 17 type bipolar motor w as used for the stepper motor test. The BLDC motor test setup is sho wn in Figure 3(c). A GMB5108-120T gimbal motor w as used as the FOC algorithm v alidation. In platform v alidation e xperiments, the current s of each half-bridge (on high-side), the DC b us v oltage, the optical and absolute encoder responses were measured and graphed. Figure 4 presents the responses of the control algorithms obtained during the e xperimental v alidation tests. Figure 4(a) sho ws the DC motor algorithm response with a reference input of 3 radian. The stepper motor w as set to 128 microsteps and a 2 radian reference input w as applied. Figure 4(b) sho ws the stepper motor algorithm response. F or the BLDC motor , a reference of 2 radians w as applied with relati v e magnetic zero detection. Figure 4(c) sho ws the FOC algorithm response. All parameters were adjusted using MA TLAB interf ace and all response data were collected in MA TLAB. Three performance metrics were considered to demonstrate the functionality of the algorithms: rise time, settling time, and steady-state error . The control parameters for each motor were manually adjusted e xperimentally by monitoring motor responses. Int J Recongurable & Embedded Syst, V ol. 15, No. 2, July 2026: 339–349 Evaluation Warning : The document was created with Spire.PDF for Python.
Int J Recongurable & Embedded Syst ISSN: 2089-4864 345 T able 1 summarizes the v alidation results of the proposed po wer stage for the sample motors. The steady-state error remains belo w 0.015 radians for all tested motors. The stepper motor e xhibits the highest settling time and steady-state error , while the DC motor achie v es the best dynamic performance. These results conrm that the proposed system can successfully dri v e dif ferent motor types, with the nal performance depending on the selected control parameters and motor characteristics. (a) (b) (c) Figure 3. T est setup for; (a) DC, (b) stepper , and (c) BLDC motor (a) (b) (c) Figure 4. Control responses for; (a) DC, (b) stepper , and (c) BLDC motor T able 1. The v alidation of control algorithms Motor type Rise time (s) Settling time (s) Steady state error (rad) DC motor 0.32 0.254 0.0094 Stepper motor 0.22 0.853 0.0148 BLDC motor 0.18 0.383 0.0107 Experiments were conducted with the sample motors to demonstrate the rob ustness of the motor t y pe identication algorithm. In the e xperiment, each half-bridge w as stimulated sequentially for a durat ion of 37.5 ms. The channel being tested is acti v e in the high side. Other channels are k ept acti v e on t he lo w side. The current limit is set as 300 m A ± 12% and duty-c ycle is tuned as 45% at 25 kHz. The threshold v alue is dened as 150 mA for δ = 0 . 5 . Figure 5 sho ws the current response for motor type and acti v e channel e xperiments. The DC motor is connected to the channel one and tw o. Figure 5(a) sho ws the channel responses for DC motor . There are tw o short current pulses on channel one and tw o. Other channels are on the oor . Congur able embedded solution for multi-mode motor contr ol (Ufuk G ¨ uner) Evaluation Warning : The document was created with Spire.PDF for Python.
346 ISSN: 2089-4864 The acti v e channel responses are approximately twice t he threshold le v el. The stepper motor w as connected on channel one, tw o, three, and four . Figure 5(b) sho ws the current response for t he stepper motor . F our channels pro vide current pulses o v er than twice the threshold le v el. In the BLDC motor , three channels of dri v er were connected. Figure 5(c) e xhibits the current response for the BLDC motor . There are three pulses o v er threshold le v el. Response of the BLDC motor is dif ferent from DC and stepper motor . There are sharp current drop at the be ginning of the e xcitation. This situation is caused by the back-EMF that initially occurs in the acti v e lo w-side connected windings of the star -w ound. The identication algorithm searches the maximum response o v er than the threshold. Thus, the current drop in the BLDC motor does not af fect the identication process. Repeated testing w as conducted to demonstrate the rob ustness of the identication algorithm. (a) (b) (c) Figure 5. Motor type and acti v e channel identication response for; (a) DC, (b) stepper , and (c) BLDC motor T able 2 summarizes the identication performance. The identication algorithm w as repeated ten times for each motor . The success count denotes the number of correct identications. The peak-min v alue represents the a v erage of the lo west responses abo v e the threshold le v el, while the peak-max v alue denotes the a v erage of the highest responses abo v e the threshold le v el. Peak-Std denes the standard de viation of the peak responses. The root-mean-square (RMS) of the responses belo w the threshold le v el is denoted as the noise RMS. The signal-to-noise ratio (SNR) is calculated as the log arithmic ratio between the peak-max v alue and the noise RMS. The identication algorithm determines the motor type and acti v e channels based on the peak-max v alues. F or all tested motors, the success count reached ten out of ten, corresponding to a 100% identication success rate. The maximum Peak-Std v alue w as limited to 0.0035, indicating good repeatability of the proposed method across repeated trials. Furthermore, the minimum SNR w as observ ed in the BLDC motor as 25.078. All measured identication peaks are clearly distinguishable from the noise, which ensures accurate motor type identication in the e xperiments. T able 2. Performance of identication algorithm Motor Success count Acti v e channels Peak-min (A) Peak-max (A) Peak-Std Noise RMS SNR (dB) DC motor 10 CH1 0.3065 0.3135 0.0018 0.0060 34.278 CH2 0.3223 0.3293 0.0020 0.0051 36.121 Stepper motor 10 CH1 0.3048 0.3153 0.0031 0.0057 34.785 CH2 0.3135 0.3258 0.0035 0.0058 34.843 CH3 0.3223 0.3328 0.0028 0.0054 35.655 CH4 0.3206 0.3328 0.0035 0.0051 36.065 BLDC motor 10 CH1 0.3030 0.3048 0.0008 0.0169 25.078 CH2 0.3083 0.3118 0.0012 0.0165 25.497 CH3 0.3048 0.3135 0.0031 0.0168 25.324 5. RESUL TS AND DISCUSSION Considering T able 1, while the BLDC motor has the highest rise time, the DC motor e xhibits the lo west rise time. The main reason for this situation is that the measurement is tak en from the gear output of the DC motor . The DC motor e xhibits the best settling time, while t he stepper motor has the w orst. The microstep resolution of a stepper motor is set at 128. Therefore, increasing the number of control step causes Int J Recongurable & Embedded Syst, V ol. 15, No. 2, July 2026: 339–349 Evaluation Warning : The document was created with Spire.PDF for Python.
Int J Recongurable & Embedded Syst ISSN: 2089-4864 347 the stepper mot o r to settle do wn more slo wly . Additionally , it should be considered that the motor performance, besides the control parameters, will depend on load, t he mechanical structure, motor specications (such as step resolution of stepper motors and pole-pair number of BLDCs), and feedback sensors. Therefore, T able 1 should be e v aluated specically in terms of v alidation. W ith the proposed platform, the user can customize the control performance depending on the motor characteristics, associated mechanical system, and load. Motor type identication and acti v e channel detection of fer a feature that distinguishes the propo s ed system from softw are-based heterogeneous multi-mode motor control methods [14], [15]. This feature ensures the correct identication of the motor type and the acti v e half-bridge channels. According to T able 2, it is seen that the stepper and DC motor ha v e SNRs abo v e 34 dB. On the other hand, it is observ ed that the SNR v alue of the BLDC motor is around 25 dB and its noise RMS is relati v ely high. The main reason for this is that the current drop in the motor response f alls belo w the threshold v alue. Therefore, the RMS noise increases. Ho we v er , this does not af fect the identication algorithm. Because the algorithm considers the peak-max v alue. One situation to consi der is connecting tw o DC motors simultaneously . In this case, the identi cation process recognizes both DC motors as stepper motor . Ho we v er , the user must also enter the motor type infor - mation to start the identication process. The algorithm compares the motor type with the user input. In case of a mismatch, the system enters safety mode and shuts do wn the po wer stage. Connection issues, such as connection f ault or motor winding problems, can be determined using the identication algorithm. In addition to algorithmic check, the channel responses sho wn in Figure 5 are transmitted to the user via the user interf ace. Therefore, the user can also identify f aulty connections. The proposed hardw are can pro vide up to 300 w atts of output po wer . The maximum supply v oltage is 60 V and the maximum current per channel is 5 A. This limits the motors that the system can dri v e. On the other hand, man y motors commonly used in robotics and precision electro-mechanical systems can be co v ered [27]. Additionally , a heat-sink is required if the current per channel e xceeds 1.5 A. The proposed platform uses an MCU with a 12-bit resolution ADC and D A C. Current measur ement utilizes a high-side current sensor located within the inte grated po wer stage. The current measurement accu- rac y for the current sens or is dened as ± 3% for a maximum current of 5 A [20]. The current measurement resolution is calculated as 1.23 mA/LSB. The current limiter accurac y of the DR V8962DD W is typically within ± 8% [20], it is assumed ± 12% for w orst-case conditions. The MCU hardw are and algorithms are open to implemented within higher po wer motor . Ho we v er , hardw are of the po wer stage needs to be redesign. F or higher po wers, it is necessary to construct 4 half-bridges that can operate under high po wer with thermal management. In addition to a suitable g ate dri v er , analog signal conditioning circuits must be added for current limiting and current sensing. On t he other hand, a pin- compatible 600 w att v ersion of the inte grated po wer stage (DR V8962DD V) is a v ailable and compatible with all al gorithms in this study . Ho we v er , due to the dif ferent package structure, it requires re vision of the printed circuit board. 6. CONCLUSION This study presents a unied, multi-mode motor control platform capable of controlling DC, BLDC, and stepper motors on the same hardw are through motor type identication and optimized control algorithms. Studies on motor control in the literature are lar gely focused on a single type of motor . Softw are libraries or FPGA solutions are being de v eloped in the conte xt of multi-mode motor control systems. In the proposed system, softw are and hardw are are combined for a multi-mode motor dri ving structure with four half-bridges. Unlik e softw are-based solutions, algorithms were applied to detect the motor type and the motor connections. Additionally , a method is presented that is easier to congure than FPGA-based solutions. F or e xperimental v alidation, position control of DC, BLDC, and stepper motors w as performed. The v alidity of the motor type and acti v e channel identication algorithms w as tested through repeated e xperiments. No identication errors were observ ed during the e xperiments. The results demonstrate the potential of the proposed platform and algorithms as a reliable and e xible solution for medium-po wer multi-mode motor control. FUNDING INFORMA TION Author state no funding in v olv ed. Congur able embedded solution for multi-mode motor contr ol (Ufuk G ¨ uner) Evaluation Warning : The document was created with Spire.PDF for Python.
348 ISSN: 2089-4864 A UTHOR CONTRIB UTIONS ST A TEMENT This journal uses the Cont rib utor Roles T axonomy (CRediT) to recognize indi vidual author contrib u- tions, reduce authorship disputes, and f acilitate collaboration. Name of A uthor C M So V a F o I R D O E V i Su P Fu Ufuk G ¨ uner C : C onceptualization I : I n v estig ation V i : V i sualization M : M ethodology R : R esources Su : Su pervision So : So ftw are D : D ata Curation P : P roject Administration V a : V a lidation O : Writing - O riginal Draft Fu : Fu nding Acquisition F o : F o rmal Analysis E : Writing - Re vie w & E diting CONFLICT OF INTEREST ST A TEMENT Author state no conict of interest. D A T A A V AILABILITY All code and hardw are design les are openly a v ailable in https://github .com/ufukguner/FEMC Mul ModMotorDrv with GPL3 licenses. The y can be used and modied with referencing this study . REFERENCES [1] A. V eltman, D. W . J. Pulle, and R. W . De Donck er , Fundamentals of Electrical Drives , Cham, Switzerland: Springer , 2016, doi: 10.1007/978-3-319-29409-4. [2] S.- H. Kim, Electric Motor Contr ol: DC, A C, and BLDC Motor s , Else vier Science, 2017, ISBN: 978-0-12-812138-2. [3] D. Mohanraj et al. , A Re vie w of BLDC Motor: State of Art, Adv anced Control T echniques, and Applications, IEEE Access , v ol. 10, pp. 54833–54869, 2022, doi: 10.1109/A CCESS.2022.3175011. [4] A. Morar , “Compact and intelligent Full/Hal f v e-phase stepping Motor dri v er , Pr ocedia T ec hnolo gy , v ol. 12, pp. 730–739, Jan. 2014, doi: 10.1016/j.protc y .2013.12.556. [5] M . Akrami, E. Jamshidpour , B. Nahid-Mobarak eh, S. Pierfederici, and V . Frick, “Sensorless Control Methods for BLDC Mo- tor Dri v es: A Re vie w , IEEE T r ansactions on T r ansportation Electrication , v ol. 11, no. 1, pp. 135–152, Feb . 2025, doi: 10.1109/TTE.2024.3387371. [6] D . Joshi, D. Deb, and A. K. Giri, “Metaheuristic Adapti v e Input Output Feedback Linearization Control for BLDC Motor Dri v e, IEEE T r ansactions on Consumer Electr onics , v ol. 71, no. 2, pp. 6120–6130, May 2025, doi: 10.1109/TCE.2025.3553388. [7] S. Lixian and W . Rahiman, A Compound Control for Hybrid stepper Motor Based on PI and Sliding Mode Control, IEEE Access , v ol. 12, pp. 163536–163550, 2024, doi: 10.1109/A CCESS.2024.3490793. [8] D. Monto ya-Ace v edo, W . Gil-Gonz ´ alez, O. D. Monto ya, C. Restrepo, and C. Gonz ´ alez-Casta ˜ no, Adapti v e Speed Control for a DC Motor Using DC/DC Con v erters: An In v erse Optimal Control Approach, IEEE Access , v ol. 12, pp. 154503–154513, 2024, doi: 10.1109/A CCESS.2024.3482982. [9] J. A. Niembro-Cece ˜ na, R. A. G ´ omez-Loenzo, and J. Rodr ´ ıguez-Res ´ endiz, “SoftCtrlDC-M: Embedded control softw are for brushed direct current motors, Softwar eX , v ol. 25, 2024, doi: 10.1016/j.softx.2024.101643. [10] X. Zeng, C. Liu, X. Sheng, Z. Xiong, and X. Zhu, “De v elopment and implementation of modular FPGA for a multi-motor dri v e and control inte grated system, in International Confer ence on Intellig ent Robotics and Applications , 2015, pp. 221–231, doi: 10.1007/978-3-319-22879-2 21. [11] Z. Huang, S. Qiu, B. W ang, and Q. Liu, “High Precision and F ast Synchronization Fuzzy Position FPGA-Based Controller for Smart Multi-Motor System, IEEE T r ansactions on Industry Applications , v ol. 61, no. 3, pp. 3886–3895, May–Jun. 2025, doi: 10.1109/TIA.2025.3536417. [12] T . Lan, B. Liu, J. W ang, and Y . Xue, “Ev ent-T riggered Control Strate gy for Multi-Motor Systems Based on Iterati v e Learning, in 2025 2nd International Confer ence on Electrical T ec hnolo gy and A utomation Engineering (ET AE) , Guangzhou, China, 2025, pp. 324–329, doi: 10.1109/ET AE65337.2025.11089630. [13] R . de Castro, R. E. Araujo, and H. Oli v eira, “Control in multi-motor electric v ehicle with an FPGA platform, in 2009 IEEE Interna- tional Symposium on Industrial Embedded Systems , Lausanne, Switzerland, 2009, pp. 219-227, doi: 10.1109/SIES.2009.5196218. [14] A. Skuric, H. S. Bank, R. Unger , O. W illiams, and D. Gonz ´ alez-Re yes, A Field Oriented Control (FOC) Library for Controlling Brushless Direct Current (BLDC) and Stepper Motors, J ournal of Open Sour ce Softwar e , v ol. 7, no. 74, p. 4232, 2022, doi: 10.21105/joss.04232. [15] STM32 Motor Control Softw are De v elopment Kit (SDK), STMicroelectronics, [Online]. A v ailable: https://www .st.com/en/embedded-softw are/x-cube-mcsdk.html#o v ervie w, (Accessed: Dec. 2025). [16] Xilinx Inc., A vnet-AES-S6M C1-LX75T -G User Guides: Getting Started Guide, Xilinx Documentation, 2014, [Online]. A v ail- able: https://www .a vnet.com/fsp/opasdata/d120001/medias/docus/7/A vnet-AES-S6MC1-LX75T -G-User -Guides-Getting-Started- Guide.pdf, (Accessed: Dec. 2025). Int J Recongurable & Embedded Syst, V ol. 15, No. 2, July 2026: 339–349 Evaluation Warning : The document was created with Spire.PDF for Python.