The other night I was researching building a balancing Segway like robot with the Lego Mindstorms NXT kit. I wanted a robot that could balance on two wheels and could move forward and backward. I also wanted the robot to recover when “pushed”.
I was familiar with Steve Hassenplug’s Legway built on the Lego RCX platform, but I wanted to tackle the challenge with the NXT. Luckily, I found Philo Hurbain’s NXTWay. I was intrigued enough to build a copy and try out the programming.
It is quite hard to get the balance right and in the end I created a very aggressive robot that I can push around and it will mostly right itself. Here is the video of the final creation.
Marek January 14, 2007
Hi Rich,
very impressive NXTWay. Me and my son, we want to give it a shot as well and I was wondering if you could share with us your NXT-G code so we get some ideas how the balancing portion needs to work.
Thanks
Marek
Dev January 19, 2007
Nice!!! 🙂
Rich January 19, 2007
I pretty much modified the code from Philo’s website listed above. Modify the “scale” parameter to get some of those effects.
swissboy February 4, 2007
hi,
your bot is very nice. i have some problem with the program from Philo. could you give me the programm for the nxt??
thanks
and sorry for my bad english, but i speak normaly german
Pete February 4, 2007
Very cool what you did! I played around with the scale, but wasn’ able to do anything you did. Could you post your scale and PID values(KD, KI, KD) and potentially other params you edited?
Also: were you able to place counterweights so that your NXTway balance standing fully upright?
Any hints would be great – thanks!!!
joe February 5, 2007
i think all you did ws to sewt the light sensor value when it was at x it was vertical, when it was lesss it went forward to correct it self, when greater it went backwards to correct its self. and by adding a second sensor would prob make it easyer to backwards. but if you did programing a certian way just add a wheely bar.
Rich March 15, 2007
I could only get it to balance, but not move or move and not balance. I need a second light sensor so I can rebuild it and try for both movement and balance without any non-lego sensors.
Steve March 20, 2007
Hi Rich,
your NXT Segway is really a piece! Could you please get in touch with me?
Jeremy March 21, 2007
Hey Rich,
I was wondering if you programed this using the Mindstorms software or programs listed on Philo’s website. I am trying to program it using the Mindstorms software and I can’t get it to work.
Thanks.
Rich March 23, 2007
I used the program from philo’s website and modified the variables.
brett stevens May 19, 2007
I have been trying to build this NXTway but I cannot get it to stand straight no matter how I vary the coefficients! Nor beable to move and stay balanced. Does anyone have some tips on how to go about “tuning” KP, KD, KI. Should the scaling parameters for err
Rich May 22, 2007
It has been a while since I played with this one, but try to slowly change the variables. Start with one variable at a time. It took forever for mine to balance and move properly. Even after all that work it was still quite un-reliable.
nils June 26, 2007
Hello I would have there times ne question: I try for 5 weeks already mean Segway robot to programieren and to calibrate ultrasonic sensor (17-9) cm or photosensor (382-525) and I get it not, could you me perhaps times help or me one tap give. Mfg Nils would make me happy about an answer
Luiz July 10, 2007
Congratulations!! you robots are so cool!!
do you just have a NXT kit??
Rich July 12, 2007
I have a few NXT kits and lots of other technic kits used for parts.
jorge - españa May 29, 2009
Please. i need contact with the code source of this video. who is the creator.contact with me: gsivillerp@hotmail.com or sistemas_wl@hotmail.com.
this is my project final of the course system embebed and i cant stand up my robot lego nxt. please urgent contact with me.
John August 7, 2009
Can you send me the blueprints on how to make it and the program for it?
I would appreciate it.
reggie October 6, 2009
can I have the segway code?
roygbiv April 23, 2010
descient, but put the light sensor further out, and lower the trigger point on the light sensor i built a segway robot too. make it taller, and download the segway program from nxtprograms.net (i did not make that program, but it works very well. I use a program i created, but i have not figured how to put it online)
houzillf February 14, 2012
may I have a look at your code, I found your robot quite stable. I am doing my own project as well, but it always tip over, I wonder if there is something wrong with my PID value and the algorithm.
Hope you can share some info with me.
Jei April 29, 2012
Hello
Your vedio is really cool
I have few qustion
I can balance the robot,but I don’t know how to
foward at same time,would you mind to give me some suggestion??
Hope you can help me:)
May you have good day:D
Arko November 19, 2012
I tried to build in bricx command center, but its not stabilizing. can you help me, if i send you codes ?
melvin chan October 30, 2018
hello, can you please share your code, it´s for a school assignment. Thank you.
Rich Thompson November 18, 2018 — Post Author
I think you will have better luck with the code links in the article. I used the NXTway code linked above.