Acitivity Board iRobot Create 2 proj

It must be "cabin fever" setting in. I went ahead and ordered an iRobot Create 2 robot. Nothing against the Activity Bot, just needed something a little larger and affordable. I have a couple of Activity Bots, in a box somewhere.

Initially I will be using the Activity Board WX with the WX WiFi module. And I will be using SimpleIDE to program it. So far I have determined that the only way to access the WiFi part is by using SimpleIDE. Not sure, but I think flexGUI cannot access the WiFi part for programming the Activity Board WX, like I said, not sure about that part.

I was also thinking about the P2, and if that could be used to control the Create 2. The latest P2 Eval board does not seem to be setup for that, no WiFi, no easy way to power it using 6V-26V power, no easy way to add different sensors and peripherals. It would be nice if there was a robotics P2 eval board, I would imagine that somewhere along the line Parallax will be creating an Activity Board WX with the P2, for the Activity Bot.

Ray

Comments

  • When I put in my order earlier this week, their was a mention of covid-19 delays, since I have not received an email detailing the shipment, I guess, maybe next week, hopefully, it gets shipped.

    This is giving me some time to think about the robot and what I will be preparing it to do. The one, very important thing is, the robot power control and usage. The Create 2 standard battery pack is 2.6Ah, which means that you could get probably a good 1 hour run before it needs to be charged. I think I will be adding a power pack for running the Activity Board and accessories.

    The Create 2 has a little pull out compartment that can be used, maybe it could fit a small power pack. driverBob made an interesting discovery, vruzend diy, the kit allows you to make your own 18650 battery packs. I am watching his thread to see how his battery pack is working out.

    Since I will be adding a Raspberry Pi, to help out the Activity Board, or vice-versa, I know I will need a 3.3V or a 5V power source for the RPi and a 6V power source for the Activity Board. This could be a little tricky, I would like to minimize the regulator count for this. The wiring could get very messy, and a problem of shorts plus wires coming loose, comes in to play.

    Since the 18650 battery is 3.65V, and I think it gets charged up to ~4.0V, I think, hopefully the RPi is ~4.0V tolerant. Now, the Activity Board does not have a method for powering it in that manner. For the P2, I think I read that it is ~4.0V tolerant, so a battery pack that provides 3.65-~4.0V battery pack could be created. Putting together 4 18650 batteries in parallel could provide maybe 4 - 6Ah, and hopefully fit into the little Create 2 drawer. Also I would have to create some wiring concept to have the 18650 battery pack charged up when the Create 2 is having its battery pack charged up. Boy this could get very tricky, in terms of wiring and control.

    Ray
  • I received an email from iRobot yesterday, concerning my order, it has been delayed. It has been seven days since I put my order in, now the new delay could be another ten days, or maybe more.

    I keep thinking about possibly using the new P2 eval board instead of the Activity board. Not sure if I could make that work the way I want it too work. First problem, how do I power the P2 eval board, the Create 2 provides unregulated 14.4V. With the Activity board I just use a barrel plug connected to the Create 2 power supply.

    The other problem that I see is using the WX WiFi to program the P2. I could, maybe try to connect a SIP WX WiFi somehow, but still not sure if flexGUI would be able to work, let alone use the necessary driver for accessing the module. So, what IDE would I use to program the P2.

    So there are two big obstacles that would have to be overcome, right off the bat.

    My end goal is to create an autonomous robot, which means access to lots of storage, that is where the RPi comes in. Besides adapting the new RPi camera, the robot will probably have a lot of different sensors on it. Now I am thinking interrupts within a cog, not sure that flexGUI has that available just yet. Boy this could be a very long project to develop fully.

    Ray
  • VonSzarvasVonSzarvas Posts: 1,914
    edited 2020-05-16 - 16:02:35
    Waiting for the P2 Eval Rev C will make the Wifi programming simpler. You can do it with RevB, but there's a tweak needed.

    Rev C due by mid June, but nothing guaranteed at the moment.
  • Rev C due by mid June, but nothing guaranteed at the moment.
    From the looks of things, that might be about the time I get the robot from iRobot.
    Waiting for the P2 Eval Rev C will make the Wifi programming simpler.
    That is good to hear, I will also probably need to use the ADC functionality of the smart pins. Hopefully there will be some handy-dandy routines available for that.

    Speaking of the WX WiFi, my testing shows that the SIP WX Wifi module has a shorter signal strength than the one on the Activity WX board. Not sure why that is, I tested both of them. I especially made an effort to see what the signal strength was while the units were on the floor, since that is where the robot will be.

    I will be getting the Parallax GPS module to test out on the robot, this will be used inside the house, I hope this will work out as expected.

    At the moment, the robot, will be outfitted with an Eval Rev C, Sirc, for manual control, WX for remote control and programming, and maybe a temperature sensor, to start things off. I was also thinking it would be nice the have some sort of IR Tx/Rx communication, so robots could talk to each other when in range.

    Ray
  • I believe that the project will definitely need a P2 board, of some sort. I am thinking about the Eval Rev C board, because it will be WX WiFi capable, but what tools will be available to program it?

    I have nothing against Spin/Spin2, but that is not my choice for development, sorry. So, what else is left, FlexGUI. Eric has been working on it for awhile now, and it is starting to look good. Since I have decided that the project will need a WiFi component, FlexGUI is not there yet, for doing the WiFi stuff.

    So, I guess I have to pull back and do a preliminary prototype using the Activity WX board with the WX WiFi module.

    Ray
  • I just got an email that said the robot will be shipping out probably today, so, maybe the middle of next week I should have the delivery.

    I guess I will be using the Activity WX board with SimpleIDE. Below is an outline of the program code, at this point I am using seven COGS.

    Ray
    /*
      cr2mobile.c
      
      May 12, 2020
      
    */
    #include "simpletools.h" 
    #include "simpletext.h"
    #include "fdserial.h"
    #include "adcDCpropab.h"
    #include "sirc.h"
    
    #define reboot() __builtin_propeller_clkset(0x80)
    
    serial *rpi;
    serial *cr2;
    
    volatile float vw;
    
    void bat_info();
    void rpi_com();
    void cr2_sirc();
    void cr2_ctrl();
    
    int main() //COG 0
    {
      // Add startup code here.
      cog_run(bat_info,128); //COG 1
      pause(150);
      cog_run(rpi_com,128);  //COG 2 & 3
      pause(150);
      cog_run(cr2_sirc,128);  //COG 4
      pause(150);
      cog_run(cr2_ctrl,128);  //COG 5 & 6
      pause(150);
      //COG 7, last cog avaialable
     
      while(1)
      {
        // Add main loop code here.
        print("Data: %.2f\r",vw);
        pause(4000);
      }  
    }
    
    
    /* Tracking of the battery power. */
    /* Track the robot main battery and the additional power pack. */
    void bat_info()
    {
      float v0;
      adc_init(21, 20, 19, 18);
      
      while(1)
      {
        v0 = adc_volts(0);
        pause(150);
        vw = (v0*4.8125);
      }    
    }
    
    /* Comunication with the Raspberry Pi. */
    void rpi_com()
    {
    rpi = fdserial_open(1, 0, 0, 115200);  //COG 4
      
      while(1)
      {
        //writeChar(rpi,'A');
        writeFloatPrecision(rpi,vw,4,2);
        writeStr(rpi,"\n");
        pause(1000);
      }    
    }
    
    /* Manual control of Create 2 with TV remote. */
    void cr2_sirc()
    {
      
      while(1)
      {
        pause(500);
      }    
    }    
    
    /* Commands to control the Create 2. */
    void cr2_ctrl()
    {
    cr2 = fdserial_open(2, 3, 0, 115200);  //COG 6
      
      while(1)
      {
        pause(500);
      }    
    }  
    
  • To my surprise, I got my iRobot Create 2 package.

    Unpacking:
    The box itself shows that it is a Create 2, the green model. But when I open up the box and pull out the contents, it contains a black robot. The black robot has had all of its brushes removed, and I think that it is a Roomba 614 model, stripped.

    I removed the battery pack, and the battery pack is a Lithium Ion 1800mAh. Could not find any more relevant information about the lithium battery pack, not sure if this is good or bad choice. The normal battery pack is usually a NiCad 2600mAh 14.4V.

    It also contained a communications cable, it looks like a new model, because it has a 10 pin female header on it. The header is TTL just like the mini-din. The USB part of it would be used with a computer for communications with the robot.

    I checked some of the voltages at the mini-din connector. When it is on the home base, it shows ~19V, when it is off the home base, it shows ~15.5V. I had the Activity board connected to the mini-din, and when it is on the home base, the Activity board, when turned on, the board shuts off. I guess it is blowing a fuse. When the robot is off the home base, and the Activity board gets turned on, it stays powered up. I guess the board can handle the 15.5V. Not sure if there is something wrong with the Activity WX board.

    I did a quick test with the Activity board connected to the communications cable header, and the commands that were sent, worked to control the robot. The Activity board was powered by my small lithium ion power pack, when charged up, it is ~8V 2600mAh. I guess I will have to put two of these together, parallel, and have ~8V 5200mAh of power. It looks like I could put the batteries inside of the robot compartment. Now how can I have the robot charge the batteries while it is on the home base charging the robot.

    Next thing is connect up an IR demodulator, and use the Sirc functions to control the robot with a TV sirc remote. I will be able to see how straight it runs, traction transition between wood floor and carpeted surfaces, plus how it handles rolling over loose cables that could be laying on the floor.

    On to the next thing.

    Ray
Sign In or Register to comment.