The light bulb is slowly growing brighter

Here is my debugger, I'm fairly sure I have it rocking now.  I will say it looks strikingly similar to the MIT DYI Segway's debugger and I'll talk more about the debugger later. 

I just found their site but it is the best source of knowledge I've found regarding filters and how stuff works.  It isn't perfect but if you have a few beers, it starts making sense.  I say thank you yet again to the smart people at MIT and thank them for putting source out there for me to reverse engineer.

Examples of Clint being confused:

  • I didn't fully understand why they had .000128 in their source with no reference to why.  It is referenced to used when multiplying the amount of nanoseconds that have passed, I think.
  • How their setup runs at 100Hz.
  • Why they multiple values by what appears to be a randomly chosen constant.

Examples of Clint's debugger app cheating:

  • It is multithreaded on a multi-core processor.

Examples of Clint's debugger app not cheating:

  • It does a bunch of extra debugging information and data transformation that a real world application wouldn't need to do.
  • Lot of WinForm GUI processing crap.
  • I'm running Outlook and have 3 other Visual Studio instances open.
  • Roll, Yaw, and Tilt Z aren't needed.

PROGRESS!

image

I now have the Gyro automatically setting itself to the proper values now too.  I also am getting voltage back from the gyro battery source too.  Plus I'm getting degrees now instead of just voltage.  I think I got the motor controller source done.  I can start putting this in.

Things left to do:

  • I need to refactor the debugger application and make all the work the form does for the most part into the Gyro class.
  • I actually need to see how the battery value changes over time so I can add in an alarm when the gyro's battery is too low.
  • Remove my damping, a low-pass filter will take care of this.
  • Add in a Delegate (function pointer) so the motor controller class has a fast instant hook in.
  • Create a "loader" for the motor class too but this requires me to actually have the controller with me.
  • Get the Gyro class to be more tweakable on scaling and offset values, I'm happy right now however with what I have for the Pitch, X and Y values.
  • Figure out a deadman switch.
  • Make it work

No comments posted yet.

Post a Comment

Please add 1 and 4 and type the answer here:
  • About
  • Clint Rutkas: I build stuff that will eventually hurt me. I'm your average nerd.
  • Follow Clint on Twitter