Monday, December 19, 2011

Change Mechanism

I revised some parts of the program and added a section to calculate and dispense change.  However, there's still some issues to fix.  I'm also having some troubles with MyBlocks....

Sunday, December 11, 2011

Public

Well, this blog finally went public.

Enjoy!

Friday, December 2, 2011

One NXT

Mwuhahaha.

I made it run off of one NXT and five other motors off the PF battery box.  Sorry that I don't have any pictures of the two-NXT version.  I also apoligize for the terrible quality.
Let's see....

Off the NXT:
Motors
One NXT motor to analyze the size of the coin (inspired by a coin-analyzer I saw online)
One NXT motor to dump the analyzed coin into the sorting tray or down the return chute
One NXT motor to move the sorting tray
Sensors
One RIS light sensor to detect the coin in the coin slot
One touch sensor for the coin analyzer
One NXT light sensor to detect the coins coming out the change dispenser
One PF IR link to communicate with the PF

Off the Power Funcions:
Motors
One PF M motor for the change-dispensing mechanism
Two PF XL motors for the upper two dispensers
Two "newer" RIS motors for the lower dispensers

In order to use only one NXT, I had to eliminate a sensor so I could plug in the IR link in the freed port.  I took out the touch sensor used to detect the starting position of the sorting tray by replacing it with a chunk of code that saw when the motor was not able to rotate a set number of degrees in a certain amount of time.  This occurs when the sorting tray is in its start position and cannot go any further.  The motor cannot push further and the code detects that it is not making any more progress.  Thanks to other online project for this idea, such as this one.

Getting closer...hope to use this again to make money in December or onward.

Friday, September 23, 2011

Amphibious Explorerbot

Remember this project?  It didn't have the exact outcome I was hoping for, but it still won the All Terrain Explorer in this challenge.  See the award page here.


This is the land mode.  It actually was pretty fast in this mode, riding on six small NXT 1.0 wheels.  However, on the one climbing test I ran, the gears jammed. 



Here is the water mode.  It folded down its wheel sets to float on the four large wheels, the six NXT 1.0 wheels and the four balls.  The two red flippers (one of which is underneath the flat red construction on the right, better seen in the above picture) propelled it very slowly through the water.  I did not test this, but I do not believe it to have been very stable in this mode - it tipped over when it had a stalk with the ultrasonic and compass sensors!

Also, this robot was not programmed to enter land from water or water from land.  It was my original intention, but I decided that it was too risky and complicated, and I lacked a good place to test it.  However, it still could transform itself between the two modes, I just had to place it in either terrain.

And....

Well, I thought that I wouldn't have to be running the thing until much later.  However, one day (some time ago!) I figured out that I had only a few days to finish the machine (including programming)  Unfortunately, only 1/4th of the dispensers worked properly that night, and I'm going to have to work on it. At least I could use my PF remote to dispense the candy properly (and reset the dispenser)

Anyway.  Here's a picture of it without the dispensers but with the front plate in place.  Later, I added four dispensers facing inward to give out the candy.  The entire front was covered by a plastic plate my mom and I cut (which took some time)
I also changed the motor on top so that it stuck out the back instead.  I had attempted to add it on the inside, but there was too much backlash in the mechanisms.  It is shown in this second picture.

I don't have any pictures of the latest version, but I hope to add lights.

Tuesday, August 9, 2011

Progress

Well, here we go.  My little brother, with the help of friends, built most of the standard LEGO "wall" that sat on top of the DUPLO bricks.  Then, I implemented the coin-manipulating device.  However.....now I'm going to have to find a way to cover the device (but leave the bottom two-thirds of the machine open so the products can be seen).  We're running low on standard LEGO bricks here.  Perhaps I should take out some of the standard LEGO bricks and put in those other DUPLO bricks to compensate for the loss of height.


 I added a side door so that the coin holding device can easily slide out (and hopefully take the coins with it)

Additionally, I hinged a section of the top of the machine to allow for access to the bucket-rotating motor and this NXT Intelligent Brick's motor port and USB port. 

Friday, August 5, 2011

Sorting

A few days ago, I sorted the DUPLO bricks that I wanted to use for the vending machine's frame from the ones that I did not want to use.  I then put them together in a frame to give me an idea of how big the machine could be just with the DUPLO bricks.  Answer:  Either I was going to have to have few products, or make it bigger using standard LEGO bricks.


I have spent a lot of time sorting standard LEGO bricks from our huge collection for their use in the machine's frame.  Yesterday, with the assistance of my younger brother and sister, we managed to sort a sizable amount of bricks into divided containers by color.


While my boat pieces dried in the background from their second test!  (I wanted to see if the wheel were more buoyant on their sides than straight up and down.  I should have remembered that if they are completely submerged, they will displace the same amount of water anyway.  Despite this, the wheels on their sides provided more buoyancy than the straight ones because they were more submerged.  For the sake of personal challenge and NXTLog competition appeal, I'm going to have them on their sides....and....)

Tuesday, August 2, 2011

By the Way...

This is a test for an entry into The Explorerbot Challenge
 Inspired by this project

Pictures!


Finally, pictures.  The first one you see here is the version that my friend and I worked on.  Shortly afterward, I decided that the prototype was good enough, and as aforementioned, I disassembled it and began to rebuild the modules in a more compact fashion.  And as I said, I did stack the two modules on top of each other to make it much more compact.  Then, what's new?



  • Cross-braces added to strengthen robot
  • Change chute updated - now it feeds to the left and then to the front.  Light sensor is more reliable.
  • NXT is mounted vertically - might change its position later, but it will likely still remain vertical.
  • Touch sensor that helps in coin type detecting now has a changed wire position - touch sensor attachment is entering the coin "bucket" much more consistently















Remember this old list of things to fix in the final version?  Well, let's see what's done.
  • The attachment on the touch sensor that contacts the coin tends to get stuck on the "holding tank" if it is not in the perfect position.  Possibly, I could fix this using a troubleshooting part of the program?  Must make the entire money manipulating mechanism easy to access.  This might be fixed by changing how the touch sensor's wire is positioned (not over the little bar seen on the upper left in the above picture)
  • The connecting ramp between the coin detecting and coin dispensing modules is not steep enough.  No ramp in this version!
  • The place where the coins come out is very hard to get to.  Must make ramp that connects to front of machine.  Fixed - no ramp needed
  • There is no ramp for the coin return.  Partially completed
  • The "walls" that hold the coins in their stacks jump over the wheel that dispenses the coin.  (I don't think that it is harming it, however)  I don't know if it is harming the wheel, but I think I'll just leave it.
  • No bill feeder or bill reader  Not done.
  • Coin dispensing motor is not electrically run It can be run, but I have to switch between the touch sensor moving motor and the coin dispensing motor with only one NXT Intelligent brick.  When I add a second (and some programming) this should be solved.
What next?  More programming and the rest of the machine....

Sunday, July 24, 2011

Behind...

Getting a little behind here...anyway.  No pictures in this one, it's late.  A little while ago, my friend and I boosted the assemblies on Duplo bricks and added ramps to divert the coins.  Later, I rebuilt both of the modules.  I put care into making the mechanism that moves the touch sensor shorter, shortened the coin slot and connected the two together.  Seemed like it worked pretty well (the assembly on the touch sensor felt like it made it more easily into the bucket).  Then, I rebuilt the coin-holding and dispensing mechanism.  Ended up pretty well, although wider than it needed to be.  Unfortunately, I don't have any pictures of this version....because inspiration struck.

I realized that I could stack the "coin slot and touch sensor mechanism" on top of the "change holding and dispensing" mechanism.  The "bucket" could simply turn 180 degrees one way and deposit the coins.  So, I did so.  I added some sloped bricks on top of the linear moving assembly to divert the coins into the holders.  The result is a much more compact machine, with the coin-dispensing location much more accessible.

After that came a slope to divert the coins down from the dispensing location.  Then a second slope to divert the coins from the "bucket" rotating in the opposite direction (to return the coin being analyzed).  Then, disaster.

Unfortunately, I forgot to put in a light sensor to sense the coins coming out of the dispensing location.  And I don't want to lengthen the slope, so I pulled the RCX light sensor out of the coin slot and put it in.  After a lot of programming employing just about every possible method to detect the coins consistently, it won't work like I want it.  I'll have to lengthen the coin slot and change chute.  (Or something else.  How about twisting the change chute....?)

Thursday, July 14, 2011

Project Update

I suppose that recharging the batteries was the right idea, because it works now.  However, there are a few things to remember to fix in the final version:
  • The attachment on the touch sensor that contacts the coin tends to get stuck on the "holding tank" if it is not in the perfect position.  Possibly, I could fix this using a troubleshooting part of the program?  Must make the entire money manipulating mechanism easy to access.
  • The connecting ramp between the coin detecting and coin dispensing modules is not steep enough.
  • The place where the coins come out is very hard to get to.  Must make ramp that connects to front of machine.
  • There is no ramp for the coin return.
  • The "walls" that hold the coins in their stacks jump over the wheel that dispenses the coin.  (I don't think that it is harming it, however)
  • No bill feeder or bill reader
  • Coin dispensing motor is not electrically run
As you might notice, most of these will likely be able to be remedied without much brainwork.  The bill reader/feeder may never be built.  However, I think that I am done with it for now.  I think that I will be able to fix these problems in the final version.

On a different note, I had an idea for the product dispensing mechanism.  If I do not implement the bill feeder (which have been considering not to implement for a white now) then I can spare two motors for the product dispensing mechanism and use only two NXT Intelligent Bricks without my RCX or Power Functions.  And how would I be able to use two motors?  Well, using a mechanism inspired by here, I can run four functions in forward only off of two motors.  And not having backwards is not detrimental since the products need only to be dispensed by the machine, not taken back in by it since I'm planning to load it from the top or front.

Wednesday, July 13, 2011

Change Mechanism and Combining Modules

It wasn't too hard to make that linear change mechanism. Here it is.  I'm worrying that the dimes will not stack correctly with what I have here.  I decided that nickels are the easiest to work with since they are thick in relation to the other coins and just about perfectly fill a 3X3 brick space.  Stacks of coins are moved on top of a wheel that is in the little "hole" to the left of the ramp in the picture.  The mechanism is "refilled" through the ramp, the upper motor moving the correct coin stack into place.


So, I then had to combine the two modules, so I did the cheap way and just stacked the coin detection mechanism on top of the change mechanism.  I had some problems with the connecting ramp, and I had to shift the entire coin detecting mechanism, and the ramp still isn't quite steep enough.  Not to mention that the place where the coins are dispensed is way underneath....but I think that I'll be rebuilding this later.  I'm hoping to make the entire thing more compact and sturdier.  I'm hoping to steepen the connecting ramp and build two other ramps, one from the change mechanism, one from the coin return, to give coins to the machine user.  Now, I must figure out why the light sensor doesn't seem to be working (I'm recharging the NXT's batteries, I hope it will help).

Monday, July 11, 2011

Another Project....

Well, after this project did not preform so well, I decided to find a better way to have a machine output food when a user inputted money. So, even at that time, I decided to make a vending machine.

I had quite a few goals to achieve:
  • Proper coin differentiation between the dime, penny, nickel and quarter.
  • Several products
  • Change dispensing
  • Bill analyzer
I saw a video online in which the robot moved a mechanism down on top of a coin until the mechanism activated a touch sensor. I decided to use the same idea on my coin differentiation device.

Here's the second version. The coin goes in on the right until it is detected by the blue light sensor. It then falls into the black "bucket." The "bucket" could be rotated to let the coin go to the vault/change mechanism or to the coin return. The motor on the left moved a setup on the touch sensor into the "bucket" until the touch sensor was pressed. The rotation sensor in the left motor was then read to detect how far it had moved, and therefore, how big the coin was.

Here's the current version. It works pretty consistently if everything is in the right position before hand and the coins are placed in one at a time.

So now for the change-dispensing mechanism. I currently have a rotating design, based off of the coin holders on this project. However, it's not working that well....it's hard to get a solid construction that can hold each of the four coins and they keep on coming out when the device rotates. I'm hoping to switch to a linear design using bricks (just hope it'll work)

Monday, June 20, 2011

Summer! PF Explorer

Yep, here's summer. About time I put something on here.
Anyway, here's an outdoor PF explorer that uses the compass sensor. It steered and attempted to retain its heading using a powered articulation joint. See a detailed write-up here.

Friday, January 14, 2011

The Project - The Robot

Here is the robot that I used in the project. It contained four moving treads, moving arms with pneumatic claws, a turning head, a rubber band gun and an air pump.














Here is a view with the arms up:















Here's a photo of the mechanism that flips the pneumatic switch to close the claws when the arms are fully up:














An underside view: