My objective in writing this article grew out of my frustration in trying to implement an IIR filter on a STMG431 MCU using the CSMIS-DSP Library. What should have been a straight forward task took too much of my time. I thought such an article needed to be written to help others. Background From the […]
In this post I derive the electrical, torque and mechanical equations for a 3-phase star wound BLDC PMSM motor. The assumptions are the impedance of each leg is the same and the rotor flux is sinusoidal. The motivation is to develop the equations for a FOC controlled motor, which will be a follow-on blog. […]
This blog shows how to connect two Nucleo STM32G431 boards in a J-Tag chain and debug using the Segger J-Link EDU. My objective in doing this is to show proof of concept for a product that will have four chained MCU’s. The J-Tag in this instance is for board debugging not application code programming. The […]
In an earlier blog I described a BLDC motor control using a phase detector (PD) implemented in an FPGA, along with the other closed loop compensation. In this blog I will describe a similar control loop but instead implemented in a STM32F303RE MCU. The challenge in this design is to move all control internal to […]
My previous blogs on pathfinding have covered Dijkstra’s shortest first path (SPF) algorithm and the A* algorithm. Those discussions did not cover the computational complexity of these algorithms. That will be discussed now. In addition I’ll discuss the Traveling Salesman problem. The Dijkstra SPF algorithm is known as a Greedy algorithm. At each new vertex […]
A* Algorithm As promised I am presenting a blog on the A* algorithm as a follow up on my blog on Dijkstra’s shortest path first algorithm. The algorithm was developed by Peter Hart, Nils Nilsson and Bertram Raphael of Stanford Research Institute (now SRI International) first published the algorithm in 1968. During the time in which I wrote this blog Nils […]
Recently I was asked to investigate an analog issue with a optical sensor channel. The problem was not related to the sensor but was thought to be with an integrator circuit used to integrate a series of pulses. The circuit was using what is called a Howland current source. This was not the problem and […]
The topic of this blog is path finding using Python. I’ll start with Dijkstra’s shortest path first (SPF) algorithm and then follow up in a later blog with the A* algorithm. These algorithms find the shortest path in a traversal of a directed graph. The graph is a set of nodes, or vertices, which […]
BLDC Control Part II This blog continues the control loop development showing the outer loop. The input reference to the inner loop is a 60Hz clock (Fref1). The feedback is Fg/6 which is nominally ~60Hz. The overall control diagram is shown in Figure 7 with dotted lines outlining the inner loop which we covered earlier […]
This design note presents a phase-locked control loop for a brushless DC (BLDC) motor using the TI DRV10866 driver chip. The implementation is executed in an FPGA. This is part I of a two part series; Part II is here. Part I In the overall system the once-around signal Fg/6 is phase locked to an […]
- « Previous
- 1
- 2
- 3
- Next »