Showing posts with label video. Show all posts
Showing posts with label video. Show all posts

Thursday, July 8, 2010

Almost done

My time here at Eglin AFB is almost over. It's been a great time! I've enjoyed learning a lot of new things and using skills I've developed over the years to solve some of the problems. I gave a presentation, but can't distribute it publicly until I get it approved.

I recently discovered several wonderful GMail labs features on their blog: hierarchical labels, archive and send, SMS chat, and offline mode. Also, I learned that I can drag and drop attachments. Wow! That's muuuuuch better.

Now, for random links:
A fun video!

Friday, April 2, 2010

Clean up and catch up

I'm working today, trying to clean up and catch up a bit. I've posted an updated oscope tutorial. Others stuff:

  • A great article by Mark Taylor on his ideas for effective engineering education.
  • Helpful advice for new faculty (I could still use it!)

Monday, March 22, 2010

Fractal fun and more

After a couple of back-and-forth e-mails with the judges, it turns out that the MSU SECON team was judged third, due to eight penalty point assessed in the final round (a total of two were assessed in the previous three rounds; the behavior of the robot didn't change). Oh, well -- that puts us in 3rd place. It's a great robot and a good reminder to focus on standards other than winning.

Some fun links:
  • Johnny Lee produces absolutely amazing videos of this HCI ideas. Wow.
  • Fractals can be quite pretty (and there are more!).

Friday, February 12, 2010

Fun links

My inbox is growing, so I need to spend time to day thinning it out. Ouch.

Luxury cars run on 20+ million lines of code. Wow.

A student built a neat hexapod. According to the story, parts came from Crust Crawler Robotics, though I can't find them on that web site. It's powered by an on-board Intel Atom packaged as the Fit-PC2. Very impressive! Here's the video:

It looks like some research groups are making progress on the nanocam featured in Alex's body book!

Here's another video showing applications of that idea. It's a year old, but still seems like a simulation.

My list:
  • Cal Dan Stutts
  • Create test 2 for Micro
  • Work on paper review
  • Work on review paper revision
  • Write recommendations
  • Make SECON hotel reservations

Tuesday, February 9, 2010

Today's list

Looking around a bit more at the AVR community, it seems that WinAVR is the most common choice that many use to write C code for the AVR. However, there's not IDE; instead, it uses makefiles. Ouch. Not a good choice for teaching.

I recently did a voice-over for a simulation Buddy produced which shows the behavior of a fiddle string. I found this behavior complex and fascinating. Buddy's working on a version which will show the string in 3-D; below is a 2-D slice. Using Camtasia made is so easy to quickly record this.

I spend some time yesterday evening creating my new personal home page on the web, since my old home page is years out of date. It's fairly simple, but at least a start.

I felt like a kid in a candy store yesterday while order parts for the Summer Bridge program. I hadn't realized that Pololu (named after a valley in Hawaii) offered some many nice robotics parts. I'm also glad I could finally get the order placed; it took a while, but I think I found most of what I need.

Little did I know, but the first annual National Robotics Week will be held from April 10-18!

Today's plan:
  1. I still need to update the Micro libs with the bug fix.
  2. Spend a small amount of time on p14p. My plan is to put small but steady amounts of time in, since I can't afford to spend a lot of time on it.
  3. E-mail as always. I'm mostly caught up, with just a few items to take care of.
  4. Call Dan Stutts to finish our earlier conversation. Though not pressing; I can also do that on Wednesday.
  5. Research -- I need to review a paper, revise two papers.
  6. Funding. I really need to do this, but with other deadlines looming it's not looking like I'll make much progress. Perhaps I can put together one slide or make some other small quanta of progress.
  7. Type in corrected Micro grades.
  8. Clean up. My office is a dump. Update: better now.

Thursday, February 4, 2010

Organiziation

The plan for today:
  1. Check with Sol on the Micro parts order. Yesterday, I verified that the three power supplies he sent would work. This also means we can move to a cheaper power supply, I think.
  2. Order parts for the Summer bridge robot. In particular, I'd really like a PIC24HJ128GP502 to play with.
  3. p14p work - I figured out an important bug (building the same binary using two different versions of Python). Now, I can code on the PIC24 port and also work on Doxygen generation.
  4. Recommendation letter for Brad -- need to do that today.
  5. Weekly meeting for the robotics research group. I'd like to do a paper review, but don't have time for that today. The review is due the 22nd?, so I do need to get started.
  6. Work on the review paper. It's due the 18th, so I need to jump on it.
  7. Update the Micro libs, based on a bug report.
Weekly meeting:
  1. Group lunch - Friday at 12:30?
  2. Task list - review and update.
  3. Review and update group policies - place dates for future sessions.
  4. Neat movie found by Krishna
  5. Research update
    1. Dr. Jones
      1. p14p - Progress; working on developing hardware interface libraries.
      2. Funding - NASA pre-proposal rejected
      3. Met with the Industrial Technology group on robotics collaborations.
      4. Turned Buddy's amazing sim into a movie.

Tuesday, February 2, 2010

Update

Last week disappeared, mainly in getting p14p up and running on the PIC. The code is now in reasonable shape; I'm doing some clean-up and documentation work before plunging into further development.

Interesting things: a HUD display on an iPhone to control a quad-rotor craft; this augmented reality idea is a great way to debug robots. I stumbled across a free book on robotics using Python running on a PC to control a robot. For embedded programming, Stack Overflow makes for interesting reading.

Things I'm working on:
  • My overflowing inbox, still containing a fair amount of mail to sort through and reply to.
  • I now have funding to build the Summer Bridge robot, so it's time to order parts!
  • The continuum review paper was accepted pending a few revisions, so I need to get started on those.
  • The limiting case paper is still languishing and needs attention. Sigh.
  • I need to write the Micro test!
  • Report lights to be replaced, arrange some tutoring, other misc stuff.
  • Write recommendations.
I'd like to also think about how to structure a Python-based PIC24 hardware library. Thoughts:
  • I'm not certain what the balance between writing in C and wrapping in Python vs. mainly writing in Python is.
    • One approach: define readBits and writeBits functions in C, then call that from Python for all hardware access. Pros: less wrapping. Cons: slower, might take too much RAM space.
    • Another approach: balance between Python and C, building Python classes on top of C functions. In essence, it's a rewrite of the existing PIC24 library plus lots of wrapping.
    • The other extreme: wrap the existing library in Python. That's a lot of wrap with little Python structure to help.
  • All the peripherals on all chip variants keep the same address in memory; duplicated peripherals have the same basic layout repeated at an offset. I'd like to take advantage of this by writing a function which can operate on any port instead of duplicating a function multiple times for each port.
  • Port configuration needs the most redesign, since it's implemented as hundreds of C functions and macros. Thoughts:
    • Create a digitalPins class. The constructor takes parameters of port, firstBit, numBits, isInput, isOpenDrain, isPullup and sets bits accordingly, issuing an error if the requested resources don't exist (on a nonexistant port or bit, a port with no pullup ability).
      • This requires writes to PCFG, ODBC, TRIS, CNxPUE. What't the best way to keep a table of PCFG, CNxPUE mappings?
      • Does it make sense to also provide a read back of these bits? I've never needed to do that in all my coding. In particular, reading back PCFG, CNxPUE bits through their mapping to port/pin combos would be complex. Probably not.
      • Should this function also make sure no peripheral output pin is mapped to the pin? That's definitely additional complexity. I'm not sure how much.
    • Override read and write: if the pins are all outputs, send writes to LAT, otherwise to PORT. Provide read access to PORT, LAT and write access to either PORT or LAT.
      • Question: should each read/write check to make sure the port is still correctly configured? That means reading back PCFG bits, which is painful. Probably not.

Tuesday, January 19, 2010

Tutorial created

Pondering a bit more on better ways to teach, I think my last few problems are resolved. In particular, my plan is to create a short (~7 minute) lesson which ends with an example, then an exercise based on that example. The exercises can and should be PC-based, such as writing and simulating some assembly code. I'm planning on recording in Camtasia from PowerPoint slides, supplemented by bringing in demos on MPLab, Quartus, etc. and showing data sheet, web sites, etc.

As a first pass of doing this, I've created a dataXfer tutorial video and accompanying docs. It took longer than I'd planned and I see several things to improve on in the future. However, I think the idea is sound and fairly do-able.


PC tools:
  • ZoomIt is a nice way to draw things while recording a video.
  • The latest version of Doxygen (1.6.2) doesn't work with my #ifndefs. After much playing, downgrading to 1.6.1 solved the problem. It now includes a nice search feature build into the docs!
But these things have eaten so much of my day and there's lots I haven't done yet...

    Tuesday, January 12, 2010

    Marketing, maybe?

    Tuesdays and Thursdays are my marketing (and research) days. However, there's always the odd task or two that still needs doing before I get to that. Today's surprise: converting the bootloader to 2005 forced me to fix some whar_t to char conversions I'd ignored earlier. That turned into a project, but is done now.

    While I still have the trial version, I'm now working on converting the full SECON movie to YouTube.

    Sounds like military robotics is hot!

    For marketing, things I can think of:
    • Publicity
    • Marketing
      • Post Ankit's video when it's ready
      • Improve our group's web site
      • Come up with an idea for an amazing image or movie to showcase our group.
      • Create a quad chart to summarize research group thrusts.
      • Put together a one-slide, two-slide, and three-slide research group summaries then meet with Lori, Gary to get their feedback and ask them to shop these ideas for me.
      • Work with Jean, Mike to publicize and recruit.
    • Funding
      • Look for and apply for funding of any sort I can think of.
      • Continue writing and revising my CAREER proposal.
      • Schedule an Eglin visit.
    I figured out how to embed a playlist without creating a custom player: it's hidden in the "Edit playlist info" dropdown. Here's the SECON 2008 full version:


    Family favorites

    It's always interesting to see what Alex and Daniel like. Some of their favorites, found during the snow and cold weather recently:
    • Why it's important to drive carefully on ice.
    • What cold animals do in a Florida zoo.
    • A water balloon to the face.
    More fun videos:



    Monday, January 11, 2010

    SECON movie uploaded

    I spent time with the DivX Author trial and split the shorter version of SECON video Graham created into YouTube-sized pieces then uploaded them. Here they are (as a playlist -- watch them in series). The first video is the teaser Graham produced.



    To embed this playlist, I used a custom player (YouTube | My account | Custom video players). Then, I had to play around with the size to get the aspect ratio correct. I wonder if there's an easier way to do this?

    Thursday, January 7, 2010

    Neat products alert

    Ryan, one of my Micro students, pointed out a neat product from Sparkfun, their LCD display. It's $35 and has an easy-to-use interface (serial commands to an attached ATMega), which is great.


    Reading the latest IEEE Spectrum, here's a Roomba competitor which uses a laser rangefinder to SLAM the room it's in. Wow! I'd certainly love to play with one of those...

    Snow day

    Amazing -- today is a snow day. I'm working from home, which is nice. As always, a big goal is sorting through my e-mail inbox, which still needs some work.

    Random PC stuff: I'm trying to figure out how Google docs folder permissions interact with per-file permissions. I'd like to handle all sharing of the Micro labs using a folder, instead of changing the permission for each file. It seems like the permissions last edited take priority -- that folder permissions simply modify each file's permission. This would make sense in the case that a file can live in multiple folders. As long as I can get all the permissions looking the right way, I'll be happy for now. Part of the confusion is a lag: it seems to take a couple of minutes before the revised permissions take effect, which makes it harder to determine.

    An amazing video Ricky found:


    Today's goal is marketing: I'd like to look for proposal possibilities, develop PowerPoint slides to market our research, etc. More soon.

    Tuesday, January 5, 2010

    Shape sensing

    Krishna found a neat shape sensor that might work for a continuum robot; it looks similar to ShapeTape. Some videos (here, here) nicely illustrate its capabilities.

    More random PC fixes:
    • Annoying MS security: viewing a downloaded .chm file doesn't work until you unblock it. Here's another method.
    I'm mostly ready for classes with an updated schedule for Micro. I think I'll try some conditional release use this semester to assign homework, etc. Or perhaps I'll stick with e-mail, since that seems to work.

    Sunday, January 3, 2010

    Painting in the new year

    Vika and I decided to repaint our kitchen. The old paint demonstrated several big problems. First, because it was a flat sheen, it both showed food stains, hand prints, etc. Second, washing it (even with a damp rag) discolored the wall, meaning any stain was for all purposes permanent. Third, it flaked off easily, so that any semi-vigorous rubbing would actually remove the paint from the wall! The color (an earthy tan) was nice, but definitely not kid-friendly.

    So, we began by asking friends, reading a book, borrowing some tools, then making many trips to Lowe's for supplies and more supplies. Neither Vika nor I have any painting experience, so we began without a clear picture of how to do this! It made for an adventure, a learning experience, and a fun time. To work around our kids' schedule, we painted in afternoons when they took a nap, then again in the evenings after they were in bed. We ended up painting until midnight or so for two nights, including new year's. There's nothing like doing something to really learn it. Lessons learned:

    • The AccuBrush (on the left), which I received as a Christmas present, works wonderfully. It takes a bit of time to learn and can't paint all the way into a corner, but it's very fast. The thing that took me time to realize was that the brush needs to paint in one direction: backwards when doing a long section of wall to avoid marks from the wheel, brush, etc.
    • A corner brush (on the right) was fairly useless. It doesn't paint the seam when the two corners meet. I found using a standard paint brush easier.
    • The paint stirrer was fairly useless. It works, but leaves a lot of paint on the stirrer afterwards. A free paint paddle would have worked better. Live and learn...
    • A trim edger is very, very helpful. However, be sure not to paint against one side, then place that painted side against something you don't wait painted. Oops.
    • Painter's tape it good, but not a cure-all.  Some paint actually seeped under it. In other places, pulling the tape off de-laminated the paint, since the paint formed a continuous sheet from wall to tape. So, it helps but don't rely on it too heavily.
    • A paint stirrer isn't that helpful -- a lot of paint sticks to it. A free paint paddle would have worked fine.
    • Rollers are wonderful. Brushes are much slower and harder to use.
    • It's really fun to see the results after you're done! Not perfect, but much, much better than it was...
    Here's the final result. If only I could paint that fast in real life...

    Thursday, December 17, 2009

    The weeks is vanishing

    I'm shocked and amazed -- the week is vanishing. Wow. Today and tomorrow, then I'm done for the year!

    Some fun reading: from the IEEE, automated to death (including a truly scary video simulation of a 777's autopilot going crazy).



    I found another possibility for a demo robot chassis: a simple tracked robot. I'd like to use one robot for both Intro to Robotics, a summer camp, and a Micro demo robot. The one thing I'd like is encoders; the other question is power -- can this robot carry an arm? Update: here's a better link, including a video, plus a post on hacking in encoders.

    I merged the data transfer code in to the main ECE3724 development line. That was more painful than I'd expected, but I think it all works now. I need to document what I've done, so others can use it.