PnP – a LEGO Pick & Place Robot
PnP is a very simple (but flexible) LEGO robot that mimics some of the things an industrial robot can do. The arm is very basic, but can address a large workspace using two-axis spherical motion and a parallelogram mechanism to keep the “finger” level at the end. Using NXT-G and the LEGO NXT motors gives it a high accuracy, enough to place 2×4 bricks within a few millimeters of the desired position. The result is that PnP can move simple objects, and a wide variety of “work stations” can be fitted around it. It can also firmly push on things, activating levers or sliding mechanisms. Since the NXT can easily drive at least one more motor, this minimalist mechanism can easily be expanded. This was inspired by Ian Hendry’s amazing LEGO creations, and another project that seemed to require linear motion… but I wasn’t sure it did.
Popular Posts:
- Installing Virtue OLED Board & Laser Eyes in Dye DM9 Paintball Gun
- Bridging Digital and Physical Worlds With SixthSense
- Official Angry Birds 3 Star Walkthrough Theme 3 Levels 1-5
- HTC Schubert
- Sketching Out a Future for the Stylus
Incoming search terms:
- Published News Upcoming News Submit a New Story Groups 5th grade science project
- powered by SMF grade 1 mathematics
- Published News Upcoming News Submit a New Story Groups 5th grade science projects
- powered by SMF 2 0 hook up a home theater system
- powered by myBB math games kids
- powered by SMF timed math worksheets
- powered by phpBB fifth grade science
- All Rights Reserved Use of our service is protected by our Privacy Policy and Terms of Service second grade math problems
- Published News Upcoming News Submit a New Story Groups science projects for 5th graders
- powered by SMF second grade math games


Okay thanks
@zeeman674 Go to LEGO’s NXTlog, and search for user “brdavis42″ or the creation “PnP”. The instructions for the arm are there, as well as the program (although it’s on NXT-G 1.0; you may need to update it to 2.0 if that’s what you use).
I was joking in a way xD but i might as well go ahead what URL are the instructions posted at?
@zeeman674 Absolutely! As soon as you build it, you can has it. Since I put all the instructions on-line, that’s all your responsibility now
.
I can has?
@bitobonnie I’m glad. The nice thing is the construction is easy enough your six year old can build it
My six year old LOVES this.
@avatar835 It might, but the goal wasn’t to make things as fast as possible (there are far faster ways to sort things with the NXT), it was to have an interesting mechanism with “something to do”. That said, putting the color sensor on the arm adds some complications as well. First, *anything* you do to increase the mass of the moving arm will increase drift and backlash, forcing the program to compensate and adjust more. Second, another stiff wire would have exasperated this problem further.
Instead of an external mounted colour sensor. Wouldn’t a sensor on the arm itself make the process a lot faster, as every time your robot would go to a specific position to scan the colour.
”Color discrimination”
LOL a racist NXT
@brdavis5 thx
i think…
@randyooo54 To establish the “zero” for rotation, just have the arm rotate into a “hard stop” (both in terms of altitude and azimuth), relaxing when it stalls out. Now the program knows exactly where the arm is, every time, and bases all moves relative to that. The result is a zero-work start-up: PnP could come out of the box, run the program, and it simply worked.
How do you calibrate it, i have to eyeball it
So, if it goes foward 200 degrees, the program calculate and moves it to that absolute position?
If so, maybe my math was wrong…
@randyooo54 This is all in NXT-G 1.0, and as you can see there’s no drift in absolute position (also, there’s no inaccuracy due to gear backlash). To move to absolute positions, you simply… move to absolute positions. The program keeps track of how far away it is from the “home position”, so it always knows where the arm is. I’m *not* depending on the FW to do this – the NXT-G program itself watches the motor encoders, & keeps track.
How can u move to absolute positions?
What programming language is this in?
I built one similar and programmer with nxt-g, but there is an accuracy drift (with nxt-g 1.0)
I figured how to do this with a light sensor
u rock:)
very very impressive absolutely fab i may try a simpler version of something like this if i have time!
nice
brilliant video
That would be a sight to see! I am now on the 4th revision of my own pnp unit and am stumbling thru the nxt g code system to try and implement PID control. I found your code on nxtlog and will look to that for help.
Thank you – that’s pretty much what I was trying for. I really need to revisit this, since with two NXTs you could (in principal) coordinate three independent arms.
Very nice creation. I’ve finally dove back into the world of lego now that I am “grown up” and am having more fun then ever! Simple machines and efficient code have always impressed me and your build is the poster child for that!
It ends up moving fast, so it’s easy to miss in the motion what it’s actually “thinking” about.
Ah! Now I see that. Bricks on the third pallet didn’t slide down and that’s why the robot went to the first pallet again. I kept on wondering why the robot will move to 1st pallet when there are 2 bricks left on the 3rd pallet
I didn’t pay a close attention at all.