BOT120 PICAXE-20X2 Microbot Persistence Of Vision with Glow Canvas

<Gareth>

New Member
Here is my Long Persistence Of Vision canvas for Picaxe Tate gallery ......


Here is a run through with the nuts and bolts of the system....
[video=youtube_share;3VqeDc1fvhI]http://youtu.be/3VqeDc1fvhI[/video]

Its a basic BOT120 PICAXE-20X2 Microbot system with a custom undercarriage which i assembled for it.
It was no easy job to solder thin wires directly onto the Picaxe 20X2 legs (it was the only way) :-



Its equipped with 5 Ultra Violet Light emitting Diodes.



Which when placed onto a Phosphorescent Vinyl sheet allows you to draw not only lines
and patterns but also 5x7 bit dot matrix characters.


As always some "Get me up and running code" , more will follow......
Code:
; _Gareth_ (aka Chiprobot youtube)
;   BOT120 PICAXE-20X2 Microbot
;   Persistance of Vision (POV)

let dirsC =%00011111
B1=1
main:
Pause 2000

Gosub Left90
Gosub M
Gosub il
Gosub cl
Gosub rl
Gosub ol
Gosub bl
Gosub ol
Gosub tl
Gosub Forwards
Gosub Forwards
Gosub Forwards
Gosub Forwards
Gosub Forwards
let pinsC =%00010001
Gosub Right90
Gosub Right90
let pinsC =%00010001
 for B2 = 0 to 40
  Gosub Track
 Next B2
let pinsC =%00000000
Stop

Forwards:
pause 175
let pinsC =%00000000
 for B0 = 0 to B1
  pwm B.4,245,1 ; send pwm bursts out of pin 4
  pwm B.6,255,1 ; send pwm bursts out of pin 6
 next B0
  
return 

Eight:
 let pinsC =%00001110
Gosub Forwards
 let pinsC =%00010001
Gosub Forwards
 let pinsC =%00001110
Gosub Forwards
 let pinsC =%00010001
Gosub Forwards
 let pinsC =%00010001
Gosub Forwards
 let pinsC =%00001110
Gosub Forwards
 let pinsC =%00000000
Gosub Forwards
Return

M:
 let pinsC =%00011111
Gosub Forwards
 let pinsC =%00010101
Gosub Forwards
 let pinsC =%00010101
Gosub Forwards
 let pinsC =%00010001
Gosub Forwards
 let pinsC =%00010001
Gosub Forwards
 let pinsC =%00010001
Gosub Forwards
 let pinsC =%00000000
Gosub Forwards
Return

il:
 let pinsC =%00000100
Gosub Forwards
 let pinsC =%00000000
Gosub Forwards
 let pinsC =%00000000
Gosub Forwards
 let pinsC =%00000100
Gosub Forwards
 let pinsC =%00000100
Gosub Forwards
 let pinsC =%00000100
Gosub Forwards
 let pinsC =%00000000
Gosub Forwards
Return

cu:
 let pinsC =%00011111
Gosub Forwards
 let pinsC =%00010000
Gosub Forwards
 let pinsC =%00010000
Gosub Forwards
 let pinsC =%00010000
Gosub Forwards
 let pinsC =%00010000
Gosub Forwards
 let pinsC =%00011111
Gosub Forwards
 let pinsC =%00000000
Gosub Forwards
Return

cl:
 let pinsC =%00000000
Gosub Forwards
 let pinsC =%00001111
Gosub Forwards
 let pinsC =%00010000
Gosub Forwards
 let pinsC =%00010000
Gosub Forwards
 let pinsC =%00010000
Gosub Forwards
 let pinsC =%00001111
Gosub Forwards
 let pinsC =%00000000
Gosub Forwards
Return

rl:
 let pinsC =%00000000
Gosub Forwards
 let pinsC =%00001111
Gosub Forwards
 let pinsC =%00010000
Gosub Forwards
 let pinsC =%00010000
Gosub Forwards
 let pinsC =%00010000
Gosub Forwards
 let pinsC =%00010000
Gosub Forwards
 let pinsC =%00000000
Gosub Forwards
Return

ol:
 let pinsC =%00000000
Gosub Forwards
 let pinsC =%00001110
Gosub Forwards
 let pinsC =%00010001
Gosub Forwards
 let pinsC =%00010001
Gosub Forwards
 let pinsC =%00010001
Gosub Forwards
 let pinsC =%00001110
Gosub Forwards
 let pinsC =%00000000
Gosub Forwards
Return

bl:
 let pinsC =%00010000
Gosub Forwards
 let pinsC =%00010000
Gosub Forwards
 let pinsC =%00011110
Gosub Forwards
 let pinsC =%00010001
Gosub Forwards
 let pinsC =%00010001
Gosub Forwards
 let pinsC =%00001110
Gosub Forwards
 let pinsC =%00000000
Gosub Forwards
Return

tl:
 let pinsC =%00010000
Gosub Forwards
 let pinsC =%00010000
Gosub Forwards
 let pinsC =%00011100
Gosub Forwards
 let pinsC =%00010000
Gosub Forwards
 let pinsC =%00010000
Gosub Forwards
 let pinsC =%00001111
Gosub Forwards
 let pinsC =%00000000
Gosub Forwards
Return

Left90:
for B0 = 0 to 40
 pwm B.6,255,1 ; send  pwm bursts out of pin 6
next B0
Return 

Right90:
for B0 = 0 to 29
 pwm B.4,255,1 ; send  pwm bursts out of pin 4
next B0
Return  
 
Track:
for B0 = 0 to B1
 pwm B.4,222,1 ; send  pwm bursts out of pin 4
 pwm B.6,255,1 ; send  pwm bursts out of pin 6
next B0
return
 
Last edited:

Buzby

Senior Member
Brilliant !

This is my kind of project.

It's clever, but no use I can think of, just good to do.

How about making it go round a circle once per minute, drawing the time ?.

Still won't be much use, but cool to watch.
 

erco

Senior Member
BRAVO GARETH! Once again, I am amazed by your cleverness and dedication. I wish I had the time you apparently have. :)

I won one of these Microbots, but I haven't assembled it yet. :(
 

radiogareth

Senior Member
Where did you get the screen that it writes from?
I guess you could make one by painting some glow-in-the-dark paint onto a suitable base.
 
Top