To LUGNET HomepageTo LUGNET News HomepageTo LUGNET Guide Homepage
 Help on Searching
 
Post new message to lugnet.roboticsOpen lugnet.robotics in your NNTP NewsreaderTo LUGNET News Traffic PageSign In (Members)
 Robotics / 5376
5375  |  5377
Subject: 
RE: Announcement: OnScreen Programming for Legos RCX
Newsgroups: 
lugnet.robotics
Date: 
Thu, 17 Jun 1999 19:10:50 GMT
Original-From: 
Luis Villa <LIV@DUKE.antispamEDU>
Viewed: 
952 times
  
I have a program that modifies itself as it goes- at the moment, it
merely changes light values to "keep track" of its environment. However,
a (hopefully!) soon to be bot will make random guesses as to what it
should do and keep track of them, scoring them as it goes. Hopefully this
will progress to a genuine genetic-algorithm based bot. We'll see. Of
course, it probably still won't push it own buttons, but we can dream :)
-Luis

On Thu, 17 Jun 1999, Roland Kippenhan wrote:

Oooh.  Just had a really cool vision.  Self modifying code is one thing,
but to see a LEGO creation modify its own code by pushing its own
buttons...  That was a cool vision.  Of course the "Modify running
programs at your own risk!" kind of puts a damper on that.

Okay fine.  Then I was thinking about an assembly plant.  Sure there are
plenty of brick sorters out there, but how many assembly plants are
there out there where you feed in RCX units on one side and have them
come out on the other side with new coding that was programmed by an RCX
assembly plant?!

Okay okay.  Back to work.

Roland

-----Original Message-----
From: David Van Wagner [mailto:davevw@alumni.cse.ucsc.edu]
Sent: Monday, June 14, 1999 7:22 PM
To: lego-robotics@crynwr.com
Subject: Announcement: OnScreen Programming for Legos RCX


http://alumni.cse.ucsc.edu/~davevw/onscreen/

Here's readme.txt (ASCII version of web page, note some of the content
reads
especially better on the web, or using a fixed spaced font):

OnScreen Programming version 1.0 for Lego Mindstorms


Once installing this system, the Lego Mindstorms RCX can be programmed
on its
LCD screen via its View/Prgm buttons without use of a computer. This is
useful
for more interactive prototyping, when the computer is busy with other
tasks,
and similar situations when the program/download/test cycle takes too
long.

Version 1.0 contains only enough functionality to be useful. Gotos,
Outputs,
and Delays are implemented with a maximum of 16 instructions. Later
releases
should have more functionality.

Download the files, follow the instructions, and enjoy.

-Dave VW

Contents
Copyrights
Instructions
Files
Source
Buttons
Display
Program 1 -- backwards and forwards
Program 2 -- go in a circle
Program notes

Copyrights
Copyright (c) 1999 by David R. Van Wagner ALL RIGHTS RESERVED

This program is freeware. You are licensed to use it in accordance with
the
licenses of its dependent parts (see below) and/or MPL.

alumni.cse.ucsc.edu/~davevw/
davevw@alumni.cse.ucsc.edu

This program was developed using LegOS 0.1.6. See
www.multimania.com/legos

Copyright (c) 1998 by Markus L. Noga <noga@mauve.inrialpes.fr>
All Rights Reserved.
License to use, copy, modify and distribute this software in whole and
in part
is granted to all private and educational users, provided that they
retain
this copyright notice and offer the same licensing conditions for
derived
works.
This software may or may not compile, execute or damage your software
and/or
hardware. You received this software free of charge, so there are
absolutely
no warranties.
Lego, Lego Mindstorms are trademarks of Lego Systems, Inc.
cygnus1.dll is distributed under GNU GPL. Please see www.cygnus.com
firmdl.c

/*
* Copyright (C) 1998, 1999, Kekoa Proudfoot. All Rights Reserved.
*
* License to copy, use, and modify this software is granted provided
that
* this notice is retained in any copies of any part of this software.
*
* The author makes no guarantee that this software will compile or
* function correctly. Also, if you use this software, you do so at your
* own risk.
*
* Kekoa Proudfoot
* kekoa@graphics.stanford.edu
* 10/3/98
*/

Instructions
0. Install firmdl.exe, cygnus1.dll, and onscreen.srec into a directory
1. Plug in the Lego Mindstorms IR Tower to COM1
2. Erase firmware on RCX (ex. remove battery while on)
3. Point RCX towards IR Tower
4. Download RCX Onscreen Programming Firmware (counts to about 880)
firmdl.exe onscreen.srec
5. Press Run -- now running RCX w/ Onscreen Programming

Later if you want to restore the Lego Mindstorms firmware, rerun the
Lego Mindstorms Robotics Invention System and Configure, or
firmdl.exe "c:/Program Files/LEGO Mindstorms/Firm/Firm0309.lgo"

Source
The source code is not quite ready for prime time, but here it is
anyways.

Buttons
The buttons are now redefined

On-Off stops RCX Onscreen Programming. Due to a known defect, you must
press
On-Off again to turn off, then again to turn back on before using RCX
Onscreen
Programming again. Any customizedprograms are lost.
Run starts and stops your custom programs.
View moves the cursor (unless a program is running).
Prgm changes the item under the cursor, or while running goes back to
onscreen
programming. Note that the running program is not stopped. Modify
running
programs at your own risk!
Display
The format of the display is
SS.12 c A B C
{ SS = step }
{ 12 = arg(s) }
{ c = command }
{ A = direction motor A }
{ B = direction motor B }
{ C = direction motor C }

The cursor flashes as an underbar or selection.
The View button moves the cursor.
The Prgm button changes the selection under the cursor

SS: Prgm advances to the next step
View advances to the command (c)

c: Prgm changes the command (d=delay, o=output, G=goto)
View advances to the argument (2)

2: Pgrm changes/increments the argument
View advances to the next argument (1)


1: Pgrm changes/increments the argument (+10 hex for delay & goto)
View returns to SS (delay & goto), or advances to A, B, or C

A: Pgrm changes the direction of motor A
View returns to SS, or advances to B or C

B: Pgrm changes the direction of motor B
View returns to SS, or advances to C

C: Pgrm changes the direction of motor C
View returns to SS

Program 1 -- backwards and forwards
00.14 d { wait 2 sec. }
01. 8 o > > > { backwards all motors full power }
02.14 d { wait 2 sec. }
03. - o > > > { brake all motors }
04.14 d { wait 2 sec. }
05. 8 o < < < { forwards all motors full power }
06.14 d { wait 2 sec. }
07. - o > > > { brake all motors }
08.14 d { wait 2 sec. }
09.00 g { goto step 00 }

Program 2 -- go in a circle
00. 8 o < < < { forward all motors full power }
01.03 d { wait 0.3 sec }
02.A8 o > { reverse motor A }
03. - o   > > { brake motors B & C }
04.03 d { wait 0.3 sec }
05. 8 o > > > { reverse motors full power }
06.02 d { wait 0.2 sec }
07. - o > > > { brake all motors }
08.03 d { wait 0.3 sec }
09.00 g { goto step 00 }

Program notes
My "robot" is configured with three motors (all wheel drive). A is
mounted
front left, B is mounted front right, and C drives an axle in the back.
All
the wiring is reversed so forwards/backwards in the comments above are
reversed.
--
Did you check the web site first?: http://www.crynwr.com/lego-robotics
--
Did you check the web site first?: http://www.crynwr.com/lego-robotics



#######################################################################

     Profanity is the one language that all programmers understand.
                  -Anonymous

#######################################################################
--
Did you check the web site first?: http://www.crynwr.com/lego-robotics



Message is in Reply To:
  RE: Announcement: OnScreen Programming for Legos RCX
 
Oooh. Just had a really cool vision. Self modifying code is one thing, but to see a LEGO creation modify its own code by pushing its own buttons... That was a cool vision. Of course the "Modify running programs at your own risk!" kind of puts a (...) (25 years ago, 17-Jun-99, to lugnet.robotics)

2 Messages in This Thread:

Entire Thread on One Page:
Nested:  All | Brief | Compact | Dots
Linear:  All | Brief | Compact
    

Custom Search

©2005 LUGNET. All rights reserved. - hosted by steinbruch.info GbR