-
Notifications
You must be signed in to change notification settings - Fork 142
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Motor detection via back EMF #1
Comments
The network may contain other UAVCAN nodes, not only ESC. We need to restrict the enumeration process so that only ESCs are affected. One possible solution is to define a vendor-specific message/service for that (only ESC will be able to recognize it), but generally it is preferred to reduce the number of vendor specific data types when possible to improve cross-vendor compatibility. So I propose a generic approach based on a single new standard message. It is suitable for any node that can receive some confirmation from the user (e.g. motor turn, button press). Here's the new message
Let the default node config contain an invalid Node ID, so the node starts in passive mode (i.e. it can listen the bus but can't transmit anything). If the node is in passive mode, it subscribes to The algorithm then (essentially it's just a variation of your proposed approach):
Note that this algorithm can be safely restarted from any stage. |
@pavel-kirienko The user will need to identify the ESCs not only in their order, but also regarding their position - therefore assigning an ID and a position is linked (since the flight code has a fixed mapping of ID to position). So step 3+4 will happen at the same time. |
@LorenzMeier Yes, essentially it doesn't matter whether 3&4 happen at the same time or subsequently. It's just important to realize that Node ID and motor index are not the same thing. A new idea: since we're asking user to turn the prop, we could also ask them to turn the prop in the right direction (CW/CWW) so we can configure the direction of rotation automatically too. It shouldn't be hard to implement. |
Done. |
I would like to propose a button-less and very easy (from the customer perspective) motor detection approach:
On the technical side this needs a reconfigure and configure motor #N packet via CAN and the back-EMF detection.
The text was updated successfully, but these errors were encountered: