Driving The Robot and IR Protocols!

     This week we worked a lot on getting the RF packet sent from the controller to be received correctly by the robot. We attempted to minimize packet size using the Arduino bitWrite and bitRead functions. We also worked a lot with the algorithm to allow for natural control with the joystick, since at first the directionality inverted when we drove backwards. In getting the motors to run how we wanted them, we also ran into some issues with battery power. We started using a 9V battery for prototyping purposes, but we didn’t want to use that as a final fix due to the cost of 9V batteries. We purchased a multi-pack of 3.7V batteries than we plan to use in series to access nearly the full potential of our 12V motors.

Our robot being controlled by Landon. You can see that we can drive, turn the servo, and blink an LED.


     With most of the base hardware assembled, we were able to fully implement our RC communication. The two websites that were most helpful were two tutorials for the RF24 library:
HowToMechatronics
ArduinoInfo


     Our IR communication protocol was based on the one used by the Nerf Lazer Tag guns. Tyler was able to get a hold of a pair that his wife’s brothers got for Christmas. We were able to write an arduino routine to read in the pulses, then interpret them. It works fairly well!

Our IR communication on a breadboard. We can send one byte of information in a little under 4ms. We'll test it's range once we have our high-power IR LEDs.


     We determined that the milestone schedule for the near future wasn’t specific enough for our planning purposes. We rewrote the schedule for the next month as follows.

February 22:
Battery attachment
Base (housing fit)
IR integration
Lights and sounds

March 1:
Order new joysticks
Lights and sounds finished
LCD functionality

March 8:
Housing prototype
Consistent IR functioning
PCB designs

March 15:
PCB ordered
CAD Controller Drawing

Comments

  1. You've made a lot of progress since we last talked! I'm glad you got the RF modules working, and I look forward to hearing how you implement the IR. Will there be one or multiple IR receivers?

    ReplyDelete
    Replies
    1. There will be multiple IR receivers positioned around the robot. Any suggestions on multiplexing them to be read in on one digital pin? We use a protocol that modulates HIGH pulse length to send data, then use the pulsein() command to read them in.

      Delete
    2. There are trade-offs to multiplexing or combining signals. If you have enough pins for it, I would suggest keeping your inputs separate. If not, you can use a multiplexer or set up some kind of open collector/drain system like in I2C. I'd be happy to meet and talk options sometime next week...

      Delete
    3. Any progress on the multiplexing question? What was your decision on this?

      Delete
    4. Great work in reading the Nerf gun communication method.

      Delete

Post a Comment

Popular posts from this blog

LCDs and New Batteries

Button Multiplexing, Redesign, and World-Travelling Packages