Showing posts with label RCX. Show all posts
Showing posts with label RCX. Show all posts

Monday, January 19, 2009

A step in the Right Direction....

So I'm back and working on the Java environment. I have been able to get the firmware to download to the RCX unit once again. I ended up googling "leJOS 3 serial port", which ended up leading me to a page that gave me information that the error I was getting was related to bad code in the 3 release. I followed the directions/suggestions that was suggested for getting the firmware to download. The summary of the fix was to copy files for the COM port from version 2 and replace the version 3 files. So right now I am sitting with an RCX brick that is ready to receive the Compiled Java code, which I would love to get to download. But I have received a large error message about not being able to find certain file(s), so hopefully I will be able to find a solution pretty quickly on the leJOS forum.

(I once again edited out the user name to protect the identity of the computer.)

On another note: To account for the time of when Uni was closed on Friday...what did I do you ask. Well honestly I didn't do anything but I made up for it on Saturday by working 3 hours on my paper. The good news is that it is pretty close to done, of course if I get the Java up and running I will have some revisions to make.

Time worked Since Last Post: 4 hours 15 minutes
Overall: 37 hours 40 minutes

Thursday, January 15, 2009

More on Trouble Shooting...Back Tracking....

As I have been informed, dealing with hardware related issues can make life tough and difficult. Through out my independent study, I have dealt with the problem of getting programs to transmit from the computer to the RCX unit. And just when I thought that I had figured it out (problem being that it didn't want to transmit when I was remoted into the computer), I find that once again, I am trying to figure why it won't transmit.

Since the last post I have:

  • Changed the battery in the IR transmitter (Doesn't seem to make a difference, although plugging it in fully does)
  • Tried changing a setting on the Serial Port through Windows, since someone mentioned on a forum that they had been able to get it to work but that it ran slow...so I tried turning off a buffer setting to see if that made a difference. It didn't. I then turned it back on.
  • So I then decided to see if I could load the Lego firmware back onto the RCX, it did it. Just fine and dandy!! I was able to load a NQC program on to the RCX brick and it worked just fine.

What I am thinking could be the problem is that the leJOS for the RCX is no longer being supported and Java has since moved onto a newer version. According to the leJOS website, it should work with Java 1.1 -1.5, I think that we might be on Java 1.6 or version 6 (that is if they haven't changed their confusing ways ;-) )So my next plan of action is to go dig up an older installer of Java that I have, in hopes that maybe installing an older Java will fix the problem and that any problems I do face, I will be able to solve quickly since I might have already seen them.

On a happier note: In doing this trouble shooting, I reinstalled the NQC program for my LucyLeia (she was still all together....Just wasn't connected to her brain ;-)). Then after reconnecting her up and running the program, I noticed she switch which side of her that she was putting the colors on. Taking a wild guess that this might have to do with the orientation of the Lego block with the wire was plugged onto the RCX, I turned it by 90 degrees so that the wire was now running off the side instead of the bottom, like I had first reconnected it. Ran the program again. And Exciting stuff....she switched back to the sides that she was dropping them before, when I first had connected her up.

Time since last post: 2 hours
Overall: 33 hours 25 minutes

Still Trouble Shooting....

To continue on from where I was yesterday....With the lovely error of not being able to find the classes....This is where I started today....I have since tried multiple things to try and solve that error, which it seems that I may have. I know receive an error of not finding the Tower. Specifically: "error while downloading: Tower error: write failure". But let us back track and see what I did to get here.

  • Multiple deleting of files and recopying: I have deleted the folder that I had put the leGOS files into. Copied over straight the newer 3 version with no version 2 files in the folder. Still getting the error. Deleted files again copied over version 2 files and then copied over only one file from version 3, in hopes that that would take care of both the former problem (that was corrected with version 3) and the new one. And then reverted back to only having version 3 files in the folder.
  • Our friend Google, linked me out to a forum, where someone mentioned that to fix their problem they had to change the RCXTTY =USB variable to all lower case. So I tried that with my RCXTTY=COM variable...after making it lower case and putting a 1 directly behind it (and a couple of good old reboots), I got a new error....
"error while downloading: Tower error: bad ir link"....Have yet to google this one or try changing out the battery but from what I have read the IR tower is only suppose to be turned on when transmitting data or when the green light is on. So I have not yet pursued that route.

Time for today: 2 hours
Overall: 31 hours 25 minutes

Wednesday, January 14, 2009

Working with leGOS

As I said in the last post, I started by getting the firmware downloaded to the RCX unit. That was successful. I then continued on in the tutorial by typing out the testing code (in Notepad ++ of course). The typing out went fine ;-).....Things are looking grand....then comes the "head banging error" you know the type....."Why are you giving me that? I "thought" I followed everything to a T"....Very well time for....Google....What errors did I get you ask? Well lets see.....

  • Can't find the lejosjc.bat Problem: setting the variable properly
  • Can't find javac (being called by the lejosjc.bat) Problem: once again setting a variable properly (Can you tell that I typically don't have to do that all that often?)
  • javac: target release 1.1 conflicts with default source release 1.5 Took the error code and used our good friend Google....came upon a website that suggested using leGOS 3 (which according to the website is a release candidate...), I unzipped the downloaded zip file and copied the new files over to the original legos folder. (Note: I did not delete out everything from that folder but just told it to replace what had the same name with the new data)


(I do realize that it is somewhat hard to read the lovely command line picture....but I thought that I would go ahead and add it. I also realize that the user name is blacked out...that is to protect the identity of the computer ;-))

I then reset paths and this allowed me to "compile" the program. I did run into a small error, but that was a typing error on my part. After finding said error, fixing it and saving the file. It compiled for me quite well.

Now comes the part when we download it to the RCX unit, Right? Of course not....now comes the time where we go back to trouble shooting because we get more errors....
What error(s) are we getting you ask?
"error while linking: No classes specified"
Google here we come....
To solve this lovely little error, I have tried putting in the CLASSPATH (again) and googling it. I have yet to find the fix on Google. And that is where I am now...thinking that I would possibly get to stop with success and yet getting to puzzle it over....

The JOYS of Programming :-D

Time since last post: 1 hour 45 minutes
Overall: 29 hours 25 minutes

Moving Right Along......to JAVA

Just thought that I would update everyone out there watching the blog that I am now starting to work with Java for programming the RCX. I have set it up and downloaded the firmware to the RCX, now on to how to program in the RCX. I am following the information on this site. The leGOS from what I can tell provides the tools so that the RCX can understand the java bite code. I have begun by using the tutorial that is provided on the website.

Time since last post: 50 minutes
Overall: 27 hours 40 minutes

Tuesday, January 6, 2009

Day 2...More Reading and the beginning of Building :-D

Today was spend doing quite a bit of reading from Baum's book. He does a really good job introducing the RIS.
I will be doing a quick overview of what I learned today from my reading, then I will be showing the beginning of building one of the Robot models in the Knudsen book.



For the RCX (the brain):

  • The programming code is not compiled into an assembly code like you might think. It actually compiled into byte codes that are read by the firmware in the RCX brick. Which makes the RCX able to maintain a safe and reliable environment.
  • The program it can hold 10 tasks, which are a list of instructions for the Robot.
  • Subroutines are a way to call code within a task that you do not want to write directly into a task or that you might want to call over again.
  • The variables that are used in the Lego code, are global and can be used in any task. But the value that it will hold will be the last one that was assigned it.
  • There are three output ports with three modes: on, off, floating. The floating mode means that no energy is going to the motor but that it is allowed to spin freely.
  • Sensors come in two different types with the basic model of the kit: touch and light.
  • The touch sensor has a button that gets pushed in by something and then sends a signal.
  • The light sensor uses a phototransistor in order to sense light. It also can sense colors by this sensor. The light sensors are know to be picky and can cause the need to readjust code in order for it to work properly.
  • The RCX keeps track of time from the moment that it is turned on.
  • The datalog that it can keep can be loaded onto a computer in order to be able to see it.
  • It will automatically shut itself down after a certain amount of time, even if it is running a program.
Now for some pictures of the beginning of the Robot.....
I am following a design in the Knudsen book. I have found the pictures to be helpful in constructing a good base. Although because they are black and white and on regular paper, some of the details can be hard to figure out at first, making you back track with the snapping together of pieces.




Hours Worked: 2.5

Monday, January 5, 2009

First Day of "Hands On" Exploring....If you can call it that

Looking at Robots:

Some quick background in Robots, according to Knudsen.
A robot has five fundamental Components:

  1. A Brain or a computer
  2. A body, which holds the pieces together
  3. Actuators, which allow the robot to move
  4. Sensors, which allow the robot to work with its surroundings
  5. Power Source
When you get into mobile robots, you have tethered robots and autonomous robots. The main difference between the two is whether or not the robot carries everything with it (autonomous) or if it is tethered to a power source and/or a computer.

Today I spent a good amount of time reading the beginning/introduction chapters of the two books plus getting firmware onto the RCX Unit.

To help people get a better idea of what I am working with:
I am using an older Lego MindStorms Robotic Invention System (RIS).
The brain of the Robot will be the RCX 1.0.
It has two motors so that it can move around in the world. The two types of sensors that it has are touch sensors and light sensors.

Total Hours Spent on Project: 2 Hours

Blogger Templates by OurBlogTemplates.com 2007