5/30/13 -
Team successfully made it through the grading session and is prepared for the project demo tonight.
Team DCHOY
Thursday, May 30, 2013
Wednesday, May 29, 2013
Pre- Grading Session Update
As of Wednesday, 5/29, all systems are fully functional and should be able to accomplish the tasks outlined for the grading session.
As an update after the last post, the connection LED and ROAMER select switch were implemented, and our POD and ROAMER successfully connect to and run with the PODs and ROAMERs of other teams. The castors (made from PVC) on the bottom of the ROAMER were decreased in height, allowing the ROAMER more flexibility to take bumps on the carpet, and friction problems were addressed in the drive trains; this fix appears to address the issue of difficulty driving on carpet. Gripper height was increased, which fixed the problem of losing the box when dragging it over the door threshold. SPECIAL mount was attached to the top of the ROAMER. The bottom of each castor was sanded. A nonlinear mapping was applied to the incoming voltage received by the ROAMER before outputting the PWM frequency in order to make for increased sensitivity/ turning ability at low voltages. Vinyl was applied. The POD and ROAMER can now drive on carpet, drag a box out of the larger box, and control/ be controlled by other teams' ROAMERs and PODs. POD and ROAMER are ready for grading.
As an update after the last post, the connection LED and ROAMER select switch were implemented, and our POD and ROAMER successfully connect to and run with the PODs and ROAMERs of other teams. The castors (made from PVC) on the bottom of the ROAMER were decreased in height, allowing the ROAMER more flexibility to take bumps on the carpet, and friction problems were addressed in the drive trains; this fix appears to address the issue of difficulty driving on carpet. Gripper height was increased, which fixed the problem of losing the box when dragging it over the door threshold. SPECIAL mount was attached to the top of the ROAMER. The bottom of each castor was sanded. A nonlinear mapping was applied to the incoming voltage received by the ROAMER before outputting the PWM frequency in order to make for increased sensitivity/ turning ability at low voltages. Vinyl was applied. The POD and ROAMER can now drive on carpet, drag a box out of the larger box, and control/ be controlled by other teams' ROAMERs and PODs. POD and ROAMER are ready for grading.
Labels:
Design,
Electronics,
Gripper,
Mechanical,
POD,
ROAMER,
Testing
Update 5/27
5/27/12 Update:
The POD and ROAMER have achieved basic functionality, with some adjustments still to be made.
Circuits have been in their final state since 5/23, with a final decision to implement an H-bridge in the gripper circuit to allow additional current to flow for greater grip strength.
Software is largely finished with some minor tweaks to be made. There are still occasional problems upon connection with the ROAMER: the POD does not always register a connection immediately, and the connection occasionally breaks. These issues were largely mitigated, however, in the last couple of days, and additional fixes targeting unwanted incoming signals will be implemented as well. A major bug involving the POD software getting stuck in a while loop during the AD conversion sequence was fixed, eliminating most of the break-mid-connection problems. Connection LED and ROAMER select input will be implemented in the next day or two.
The POD mechanical structure is in its final form. The ROAMER has been built, and minor adjustments outlined after initial testing remain: the ROAMER does not drive well on the carpet, has trouble going up hills, has trouble with fine gripper movements, and fails to drag the box over the door threshold because the gripper height is limited. Fixes will be designed and implemented in the next two days.
Labels:
Code,
Design,
Electronics,
Mechanical,
POD,
ROAMER,
Testing
Wednesday, May 22, 2013
Pre-checkoff Update
As of Wednesday, May 22, the POD successfully senses analog inputs and forwards the data to the ROAMER. An error in which the POD does not reconnect after a disconnect has been fixed; however, an error remains in which other teams' broadcast signals seem to break the connection.
The SPECIAL communication with the SPECIAL PIC and forwarding to the ROAMER brain was also successfully implemented. Transfer of all circuits to protoboards is nearly complete. Processing and output of commands by the ROAMER is next on the schedule and will be completed for the checkoff tomorrow.
The SPECIAL communication with the SPECIAL PIC and forwarding to the ROAMER brain was also successfully implemented. Transfer of all circuits to protoboards is nearly complete. Processing and output of commands by the ROAMER is next on the schedule and will be completed for the checkoff tomorrow.
Tuesday Checkoff Success
The team was successfully checked off late on Tuesday. Communication nodes were all successfully implemented with the exception of the SPECIAL PIC, which was tested the previous Thursday. In the state at which the project was in for checkoff, the following items were implemented and functioning:
- The POD brain could successfully sense and send digital inputs and send the state of these digital inputs via SPI to the POD radio PIC. This "command" was implemented using the framework of the communication protocol. The POD brain could also receive the "status" from the E128 (via SPI communication with the POD radio PIC) and successfully execute broadcast/ connect and disconnect actions. In situations where the ROAMER fails to reply, the POD disconnects and puts out its "connect status" light.
- The POD radio PIC could successfully receive the command from the POD brain and simultaneously send the status of the E128 to the POD brain. Upon receiving a command from the brain, the radio PIC would immediately build the data packet and forward to the POD XBee, which would transmit the command to the ROAMER XBee.
- The ROAMER XBee would successfully receive the command from the POD and forward the command to the E128/ brain. At the same time, it would receive the E128 status from the brain and send this information via asynchronous communication to the XBee radio, which would transmit it to the POD.
- At the time of checkoff, the SPECIAL communication was not implemented but was shown to work during the previous checkoff, in which the SPECIAL PIC communicated the status of the SPECIAL to the E128.
- The POD brain could successfully sense and send digital inputs and send the state of these digital inputs via SPI to the POD radio PIC. This "command" was implemented using the framework of the communication protocol. The POD brain could also receive the "status" from the E128 (via SPI communication with the POD radio PIC) and successfully execute broadcast/ connect and disconnect actions. In situations where the ROAMER fails to reply, the POD disconnects and puts out its "connect status" light.
- The POD radio PIC could successfully receive the command from the POD brain and simultaneously send the status of the E128 to the POD brain. Upon receiving a command from the brain, the radio PIC would immediately build the data packet and forward to the POD XBee, which would transmit the command to the ROAMER XBee.
- The ROAMER XBee would successfully receive the command from the POD and forward the command to the E128/ brain. At the same time, it would receive the E128 status from the brain and send this information via asynchronous communication to the XBee radio, which would transmit it to the POD.
- At the time of checkoff, the SPECIAL communication was not implemented but was shown to work during the previous checkoff, in which the SPECIAL PIC communicated the status of the SPECIAL to the E128.
Sunday, May 19, 2013
Continuing Soldering
Continued wiring up circuits
Still need to know which pins the E128 data request line to the SPECIAL PIC is and which pins are the SS lines from the PIC in order to solder connections
Need to solder components for gripper
- One more switch for digital input
- Need to know what we're using for analog gripper input
Still need to know which pins the E128 data request line to the SPECIAL PIC is and which pins are the SS lines from the PIC in order to solder connections
Need to solder components for gripper
- One more switch for digital input
- Need to know what we're using for analog gripper input
Wednesday, May 15, 2013
SPECIAL PIC Programming Complete
The SPECIAL PIC is now programmed to be fully functional in relaying information between the SPECIAL and the E128. There is a currently uncommented "testing block" that is functioning and is designed to work with the ins/ outs and LEDs currently set up on the breadboard. A block of code that is currently commented enables the SPI communication with the E128. Code was nearly identical to the SPI code already in place and will hopefully require minimal debugging. Debugging scheduled for tomorrow.
POD CAD Components
Created all CAD Components for POD, now need to put them all together and organize structure.
Tuesday, May 14, 2013
ROAMER Drive Test
Attempted driving over carpet (6.7V applied to TLE-5206 H-brdige)
Able to drive over hard ground
Unable to climb onto carpet
Very slow/sometimes stops moving while on carpet
Solution: Chain two batteries to apply 14.4V supply voltage
Able to drive over hard ground
Unable to climb onto carpet
Very slow/sometimes stops moving while on carpet
Solution: Chain two batteries to apply 14.4V supply voltage
Monday, May 13, 2013
Making Circuits
Wired up perfboard with ROAMER circuit board
Put regulator, place for E128 ribbon cables, ROAMER select switch Molex
Wired up servo for turning SPECIAL
Put regulator, place for E128 ribbon cables, ROAMER select switch Molex
Wired up servo for turning SPECIAL
SPECIAL and XBee comm working
Monday, May 13 -
First two parts of the check-off completed... XBee radios and their respective PIC/ E128 are sending input information to each other and displaying states on output LED lines. The SPECIAL PIC constantly reads battery charge and charging state along with LED status info from the SPECIAL. When a button is pressed (analogous to E128 lowering line to request Special info) "status LEDs" are lit to display current SPECIAL status and updated battery info can be read in the debugger registers. Moving on to Brain state machines tomorrow.
First two parts of the check-off completed... XBee radios and their respective PIC/ E128 are sending input information to each other and displaying states on output LED lines. The SPECIAL PIC constantly reads battery charge and charging state along with LED status info from the SPECIAL. When a button is pressed (analogous to E128 lowering line to request Special info) "status LEDs" are lit to display current SPECIAL status and updated battery info can be read in the debugger registers. Moving on to Brain state machines tomorrow.
Saturday, May 11, 2013
Code for XBee Radio PICs
Saturday, May 11
Programming for the POD XBee PIC was completed to a level that demonstrates radio functionality and the ability to communicate with another radio. Additional cases (e.g., an incoming command from the Brain is received before transmission is complete) were not yet covered but are noted in the code and will be developed once all conditional cases are worked out as they relate to the Brains. With no receiving radio, the PIC successfully sends the command on its input lines using the Communications Protocol as its structure, then receives and processes a no ACK. Currently, it does this indefinitely.
Programming for the E128 XBee communication is nearly complete and should be functional shortly.
A state machine was developed for the SPECIAL PIC to be programmed in Assembly, and detailed pseudocode was written out that can be translated relatively easily into software. Development and debugging of this code is scheduled for tomorrow.
Programming for the POD XBee PIC was completed to a level that demonstrates radio functionality and the ability to communicate with another radio. Additional cases (e.g., an incoming command from the Brain is received before transmission is complete) were not yet covered but are noted in the code and will be developed once all conditional cases are worked out as they relate to the Brains. With no receiving radio, the PIC successfully sends the command on its input lines using the Communications Protocol as its structure, then receives and processes a no ACK. Currently, it does this indefinitely.
Programming for the E128 XBee communication is nearly complete and should be functional shortly.
A state machine was developed for the SPECIAL PIC to be programmed in Assembly, and detailed pseudocode was written out that can be translated relatively easily into software. Development and debugging of this code is scheduled for tomorrow.
Wednesday, May 8, 2013
CADing the gripper and SPECIAL
Worked on CAD of top half of ROAMER
Have dropdown level from top to hold door lock motor
Currently, gripper is flush against top plate
If we find that the pin that attaches the gripper to the motor likes to turn from vertical, we can drop the gripper down 1/4" and add a piece of loose Duron between the top plate and the gripper (with a hole in the Duron to stay on the pin/screw)
Have dropdown level from top to hold door lock motor
Currently, gripper is flush against top plate
If we find that the pin that attaches the gripper to the motor likes to turn from vertical, we can drop the gripper down 1/4" and add a piece of loose Duron between the top plate and the gripper (with a hole in the Duron to stay on the pin/screw)
State Machines
Wednesday, May 8
State machines were developed for the PICs communicating with the XBee radios on both the POD and ROAMER sides. It was decided to aim for early check-off and demonstrate communication functionality between the two radios using two input lines and two output LEDs each - then move forward with programming the Brains.
State machines were developed for the PICs communicating with the XBee radios on both the POD and ROAMER sides. It was decided to aim for early check-off and demonstrate communication functionality between the two radios using two input lines and two output LEDs each - then move forward with programming the Brains.
Tuesday, May 7, 2013
Design Review
Tuesday, May 7
Went over design proposal and slides with Ed and Jeff
General mechanical design and communications layout approved
Communications layout:
- POD side: Two PICs (One serving as the Brain in order to increase output pins, one communicating with the XBee to relay data between Brain and XBee); Two PICs communicate through SPI
- ROAMER: Two PICs (One relaying data between XBee and E128 via EUSART, one relaying data between SPECIAL and E128 via SPI) and one E128. E128 communicates with XBee PIC via EUSART and with SPECIAL PIC via SPI
***Update 5/11: It was decided that the ROAMER XBee will be accessed directly from the E128 using EUSART, as the relay PIC can be eliminated with no issues, and the SPECIAL PIC can use Slave Select to communicate via SPI with both the E128 and the SPECIAL.
Went over design proposal and slides with Ed and Jeff
General mechanical design and communications layout approved
Communications layout:
- POD side: Two PICs (One serving as the Brain in order to increase output pins, one communicating with the XBee to relay data between Brain and XBee); Two PICs communicate through SPI
- ROAMER: Two PICs (One relaying data between XBee and E128 via EUSART, one relaying data between SPECIAL and E128 via SPI) and one E128. E128 communicates with XBee PIC via EUSART and with SPECIAL PIC via SPI
***Update 5/11: It was decided that the ROAMER XBee will be accessed directly from the E128 using EUSART, as the relay PIC can be eliminated with no issues, and the SPECIAL PIC can use Slave Select to communicate via SPI with both the E128 and the SPECIAL.
Monday, May 6, 2013
Discussion of Drive Train
Discussion of Drive Train Design Decisions:
Decided on wheels to be purchased - 4 in. diameter wheels from ServoCity
Clearance under drive train estimated at 1.25 in. - should allow for surface compression estimated at 1 in.
Decided to re-use 218b project components: brackets, wheel mounts, axles
Discussed advantages of two sliders versus one slider (i.e., three points of contact) - three sliders means no chance of full weight of ROAMER being placed only on sliding supports
Bottom-mounted drive trains will allow maximum clearance and additional room for electronics components resting on base
Decided on wheels to be purchased - 4 in. diameter wheels from ServoCity
Clearance under drive train estimated at 1.25 in. - should allow for surface compression estimated at 1 in.
Decided to re-use 218b project components: brackets, wheel mounts, axles
Discussed advantages of two sliders versus one slider (i.e., three points of contact) - three sliders means no chance of full weight of ROAMER being placed only on sliding supports
Bottom-mounted drive trains will allow maximum clearance and additional room for electronics components resting on base
Prototyping Driving Input
Hooked up LM324 to buffer motor
LM324 rails at ~3.8V
Using LM324 to buffer line to a set voltage (~1.9V)
Use as one side of motor with simple voltage divider as other side
Run voltage divider side of motor to op-amp to amplify signal
Able to use output as 0-3.8V analog signal to send to control drive motors
LM324 rails at ~3.8V
Using LM324 to buffer line to a set voltage (~1.9V)
Use as one side of motor with simple voltage divider as other side
Run voltage divider side of motor to op-amp to amplify signal
Able to use output as 0-3.8V analog signal to send to control drive motors
Team Meeting
Decided on first iteration of design
ROAMER:
Two wheel drive (4" wheels) with sliding casters
Extended gripper controlled by servo to close
Rotating camera on spinning table controlled by servo
POD:
Rolling wheels on DC motors to generate voltage to control the left and right drive wheels
Button for connection
Servo to illustrate battery life remaining
Rotating potentiometer to control camera rotation
Grip sensor from fall term project to control closing gripper
ROAMER:
Two wheel drive (4" wheels) with sliding casters
Extended gripper controlled by servo to close
Rotating camera on spinning table controlled by servo
POD:
Rolling wheels on DC motors to generate voltage to control the left and right drive wheels
Button for connection
Servo to illustrate battery life remaining
Rotating potentiometer to control camera rotation
Grip sensor from fall term project to control closing gripper
Friday, May 3, 2013
Team Meeting
Discussed high level functionality and basic inputs to the POD
Decided that we wanted to have force, position, acceleration sensing
Narrowed drive down to treads and 2 wheels with sliders
Decided that we wanted to have force, position, acceleration sensing
Narrowed drive down to treads and 2 wheels with sliders
Subscribe to:
Posts (Atom)