Jump to content


CMSIS-RTOS, CMOS Machine Vision, SVPWM tracking, and gyro testbed development

Machine Vision SVPWM testbed Conceptual CMSIS-RTOS

  • Please log in to reply
39 replies to this topic

#21 Caustic

Caustic

    Advanced Member

  • Members
  • PipPipPip
  • 319 posts
  • LocationDuncan/Victoria, BC
  • Country: flag of Canada Canada

Posted 17 March 2012 - 05:48 PM

I am in the process of setting up a new Eclipse Indigo with the CDT extension, StateViewer, gcc, and gnuarm to make sure this is fully accessible to the open source community.

The objective of CMSIS-RTOS is for portability, so I am starting with the most open method. This will not yield the most compact or optimal code, but it will run properly and you will not have compiler based code size restrictions.
I swear that I try not to be, but I will eventually come across the same as my name! Just let me know.

#22 Kenn Sebesta

Kenn Sebesta

    Controls Master!

  • Members
  • PipPipPip
  • 891 posts
  • Country: flag of Luxembourg Luxembourg


Posted 18 March 2012 - 01:50 PM

View PostCaustic, on 25 February 2012 - 05:22 PM, said:

I am not aware if there is someone already playing with this in OP, please let me know there is. My initial goal is target recognition and tracking, following that I intend to implement it for a dual axis gimble/dual servo control (for camera or whatever you want, my purpose is different but the application is the same).

This is exciting progress, Caustic. Peabody124 and I are both interested in using vision for navigation, so definitely keep up the updates!

If you want to know where we're interested on going with this: http://arxiv.org/pdf/1203.2816v1.pdf
There's also some neat work done here, coupling textures with optical flow: http://www.bene-guid...light_draft.pdf

#23 Caustic

Caustic

    Advanced Member

  • Members
  • PipPipPip
  • 319 posts
  • LocationDuncan/Victoria, BC
  • Country: flag of Canada Canada

Posted 19 March 2012 - 09:51 PM

Was informed that my cmos camera adapter board shipped today! Hopefully arrive in a week or two. They will be useful to get the basic tracking implemented, then I am hopping to switch to spectrographic ccd for better accuracy.

Not able to work on much this last weekend, too busy cooking and preparing for a birthday. I also ran across Dr. Dobbs article on the Eclipse Indigo CDT cross platform issues that I intend to read tonight. Hopefully I can get my heavy hardware home this week, I would rather compile on the dual xeon than my laptop.

Still weighing the pros and cons of servos, it still seems that they will be too limited. When loss of sight happens, ideally, in my mind, the best course is to sense and continue the roll with horizon reference, not stop and go the other direction. Now this method would also mean either optical coupling or friction coupling of data and power, which have associated issues. Just a thought/musing at the moment.
I swear that I try not to be, but I will eventually come across the same as my name! Just let me know.

#24 Caustic

Caustic

    Advanced Member

  • Members
  • PipPipPip
  • 319 posts
  • LocationDuncan/Victoria, BC
  • Country: flag of Canada Canada

Posted 19 March 2012 - 10:24 PM

The intro to that paper is interesting, i will have to read the rest! Thank you.
I swear that I try not to be, but I will eventually come across the same as my name! Just let me know.

#25 Caustic

Caustic

    Advanced Member

  • Members
  • PipPipPip
  • 319 posts
  • LocationDuncan/Victoria, BC
  • Country: flag of Canada Canada

Posted 21 March 2012 - 02:20 AM

There is now a SVPWM.h that has some methodology and concept notes if you are interested.
I swear that I try not to be, but I will eventually come across the same as my name! Just let me know.

#26 Caustic

Caustic

    Advanced Member

  • Members
  • PipPipPip
  • 319 posts
  • LocationDuncan/Victoria, BC
  • Country: flag of Canada Canada

Posted 22 March 2012 - 04:06 PM

I just want to say: I hate the FreeRTOS baggage!
I know it is open and there are lots of contributors that do good work, of that there is no question.

My grumblings have to do with the lack of documentation to create new, clean projects. I do understand why this is, but it is annoying and wastes a lot of time chasing down "demo" induced problems. Yes, I am aware that some people prefer to work out of demo projects, but these have a much higher potential to introduce unexpected problems.

I am hoping to get my clean projects building tonight under all three compilers I am using. If not, I will focus on one of them and come back later to get everything working.
I swear that I try not to be, but I will eventually come across the same as my name! Just let me know.

#27 Caustic

Caustic

    Advanced Member

  • Members
  • PipPipPip
  • 319 posts
  • LocationDuncan/Victoria, BC
  • Country: flag of Canada Canada

Posted 28 March 2012 - 02:51 AM

Some formula notes and vector matrices.
A bit of camera started too.

I almost forgot, I need to see if I can source the outside gear ring ready-made or not.

Edited by Caustic, 28 March 2012 - 04:34 AM.

I swear that I try not to be, but I will eventually come across the same as my name! Just let me know.

#28 Caustic

Caustic

    Advanced Member

  • Members
  • PipPipPip
  • 319 posts
  • LocationDuncan/Victoria, BC
  • Country: flag of Canada Canada

Posted 29 March 2012 - 03:34 AM

Lets see if I can get some code running on the outputs!
Argh! Maybe not, i hate windows and i hate av that interfere with compilers!

Well, I can compile again. Now fighting with my debugger link, all I can say is that at least I have a known working project that I am using to retrain the endpoint av.


Woo! All systems go! Yeah!

Edited by Caustic, 30 March 2012 - 03:50 AM.

I swear that I try not to be, but I will eventually come across the same as my name! Just let me know.

#29 Caustic

Caustic

    Advanced Member

  • Members
  • PipPipPip
  • 319 posts
  • LocationDuncan/Victoria, BC
  • Country: flag of Canada Canada

Posted 30 March 2012 - 08:13 PM

If you ever wanted to know how disfunctionally you can make a dual output ldo when you have all the wrong components, here you go:

And before anyone asks, I am impatient and this will work until the parts show up.

Attached Files


Edited by Caustic, 30 March 2012 - 08:16 PM.

I swear that I try not to be, but I will eventually come across the same as my name! Just let me know.

#30 Kenn Sebesta

Kenn Sebesta

    Controls Master!

  • Members
  • PipPipPip
  • 891 posts
  • Country: flag of Luxembourg Luxembourg


Posted 30 March 2012 - 08:39 PM

View PostCaustic, on 28 March 2012 - 02:51 AM, said:

Some formula notes and vector matrices.
A bit of camera started too.

I've been meaning to ask you if you had put your math up somewhere.

#31 Caustic

Caustic

    Advanced Member

  • Members
  • PipPipPip
  • 319 posts
  • LocationDuncan/Victoria, BC
  • Country: flag of Canada Canada

Posted 30 March 2012 - 08:56 PM

For the moment, most of it lives in a very large stack of paper, I am trying to only put the most critical information in the notes for the code. Once the initial version is done and working, I plan on going back through and fixing the doxygen tags so it can be output legibly.

I wish I actually had time to program more, but life at this point gives me about an hour a day, so I try to do what I can. For the moment, the code is in my compilr workspace so I can access it while I am on the commuter bus, everything for this is MIT/X, so do with it what you will.

As a note on the current formulas, I am using one of the simpler methods due to an expectation that I will need to adapt it to a hybrid-dsp device for the ESC implementation I have partially designed. I will also try and build a reference list at some point.
I swear that I try not to be, but I will eventually come across the same as my name! Just let me know.

#32 Caustic

Caustic

    Advanced Member

  • Members
  • PipPipPip
  • 319 posts
  • LocationDuncan/Victoria, BC
  • Country: flag of Canada Canada

Posted 03 April 2012 - 11:28 PM

I came to the realisation this weekend that I should be using a optimised dev board to test and verify the space vector stuff. I need to build the footprints for the mosfets to reduce the thermal board space, but I hope to be finished it tonight.

If you are interested in one, let me know. It will be designed for 26V with a current surge capacity of 22A. The mosfets are designed for 80V with 22A surge, but the current sense components are 26V, I may boost that if I add the tranzorbs. It will also be bidirectional with highside and center sensing.

Off-hand I suspect that the component cost will be in the 30-40 range for low volume purchasing. What you would use it for? I have no idea, myself, I have lots of motors around.
I swear that I try not to be, but I will eventually come across the same as my name! Just let me know.

#33 Scott

Scott

    Developer

  • Members
  • PipPipPip
  • 92 posts
  • LocationBay Area
  • Country: flag of Australia Australia


Posted 04 April 2012 - 01:01 AM

Any chance this device you are contemplating could be used to drive a starter motor / alternator for a gas engine? 500W seems like it should do the job.....

#34 Caustic

Caustic

    Advanced Member

  • Members
  • PipPipPip
  • 319 posts
  • LocationDuncan/Victoria, BC
  • Country: flag of Canada Canada

Posted 04 April 2012 - 05:01 AM

?
... I am not sure I understand your question, are you planning on running them backwards under load? Simple solenoids are commonly activated by a relay and usually it is the motor driving the alternator to generate energy. If you wish, you could configure the dev board in a delta or Y configuration to build an inverter to drive a motor ... I am not sure I would advise it for a long duration, this is just a quick light-duty board to test and validate.

A few more details about your idea might help, I am aware of electric starters for karts, but i have no experience with the starters used for gas or nitro, are they the same?

Well... That was a 2 hour phonecall ... No footprint work tonight, I get up for work in 5 hours. Always tomorrow I guess.

Edited by Caustic, 04 April 2012 - 01:42 PM.

I swear that I try not to be, but I will eventually come across the same as my name! Just let me know.

#35 Caustic

Caustic

    Advanced Member

  • Members
  • PipPipPip
  • 319 posts
  • LocationDuncan/Victoria, BC
  • Country: flag of Canada Canada

Posted 05 April 2012 - 02:49 PM

I have revised the sv-dev design about three times now, most changes were to increase flexibility of use and capacity. I need to recalculate the trace copper and teminal blocks again to handle up to 105V at 22 Amps, 2.3KW can do a lot of damage if one does not pay attention. I am going to leave fusing up to the user.
I swear that I try not to be, but I will eventually come across the same as my name! Just let me know.

#36 Scott

Scott

    Developer

  • Members
  • PipPipPip
  • 92 posts
  • LocationBay Area
  • Country: flag of Australia Australia


Posted 05 April 2012 - 04:23 PM

View PostCaustic, on 04 April 2012 - 05:01 AM, said:

?
... I am not sure I understand your question, are you planning on running them backwards under load? Simple solenoids are commonly activated by a relay and usually it is the motor driving the alternator to generate energy. If you wish, you could configure the dev board in a delta or Y configuration to build an inverter to drive a motor ... I am not sure I would advise it for a long duration, this is just a quick light-duty board to test and validate.

A few more details about your idea might help, I am aware of electric starters for karts, but i have no experience with the starters used for gas or nitro, are they the same?


I am contemplating using one of these generator units for my gas engine. I thought something like your dev board could be used as the regulator. On further thought, and after reading the COTS datasheets again, I think I'm underestimating the complexity of the electronics. Perhaps another STM32 is required... ;-)

#37 Caustic

Caustic

    Advanced Member

  • Members
  • PipPipPip
  • 319 posts
  • LocationDuncan/Victoria, BC
  • Country: flag of Canada Canada

Posted 12 April 2012 - 04:05 PM

The last few days I have not been able to accomplish much between easter, family and allergies, it is intended that will change today and I can get something accomplished. Hopefully it will be the power56 thermal-via footprint!
I swear that I try not to be, but I will eventually come across the same as my name! Just let me know.

#38 Caustic

Caustic

    Advanced Member

  • Members
  • PipPipPip
  • 319 posts
  • LocationDuncan/Victoria, BC
  • Country: flag of Canada Canada

Posted 13 April 2012 - 03:04 PM

I have thought about it for a couple days, if you wanted to configure it as a type of regulator you have at least two options. You could use a mcu or you could build an analog feedback loop. Mainly it depends on the features you require and the cost.

The analog approach will be a lot more responsive and less ground problems, but will be less flexible.
The mcu could require a lot of protection and filtering as well as floating the ground or using a virtual ground to be powered off the same source.
I swear that I try not to be, but I will eventually come across the same as my name! Just let me know.

#39 Caustic

Caustic

    Advanced Member

  • Members
  • PipPipPip
  • 319 posts
  • LocationDuncan/Victoria, BC
  • Country: flag of Canada Canada

Posted 23 April 2012 - 05:09 PM

I have to say, in the last two weeks I learned of a few new calculus structures courtesy of a doctoral thesis on vision fusion. Talk about making your head hurt (still not sure I fully understand quaternions).

Trying to fully understand this so that I can pull a few elements from it. If you like higher level math and theoretical physics equations, the 100-odd page thesis is titled: Pose Estimation and Calibration Algorithms for Vision and Inertial Sensors by Jeroen Hol

If you do not know what a dot product is, Jacobian matrix, or quaternion are, you might be in for a very difficult read.

The paper is based around using a known frame scene, but there are other very useful aspects as the camera is attached to a 6dof arm.
I swear that I try not to be, but I will eventually come across the same as my name! Just let me know.

#40 Caustic

Caustic

    Advanced Member

  • Members
  • PipPipPip
  • 319 posts
  • LocationDuncan/Victoria, BC
  • Country: flag of Canada Canada

Posted 14 May 2012 - 04:06 PM

Not much time to work on things in the last little while, but, trying to get the casting design figured out for the gears and still struggling to learn all the required rotational vector calculus.
I swear that I try not to be, but I will eventually come across the same as my name! Just let me know.