Integrated System Build & Test with Customer Demo
Table of Contents
RCS Lead Acid Batteries
It was determined that the four 17Ah lead acid batteries that the team inherited were not in satisfactory condition. They were stored in a discharged state for two semesters, three of the four measured at under 9 volts. A new 12v, 75 Ah deep-cycle lead acid battery was purchased to replace them.
There are currently several issues with the circuitry of both the Robofish and the RCS. With multiple fried components, steps are being taken to determine the causes and the best method to prevent this in the future. The damaged components will need to be replaced. The replacements and the PCBs are being tested and checked for design flaws. Once causes of errors are theorized, testing is done to determine validity of the theory.
Our current theory for the RCS is that the Arduino was damaged and the PCB was unable to handle the high temperatures due to the high currents. The solution to this is to use external wiring for the high current connections and to replace the Arduino.
The Robofish has many electrical problems. In particular, the Gate Drive Board does not seem to function as intended. When pumps and valves were directly connected to the corresponding 24V I/O ports, the solenoids actuate and the pumps exhale air throughout the tube systems. However, when connected to the Gate Drive Board, the voltage measurements have shown that the board is not working as explained in its schematic from the previous team. Recent exploration has shown several fried components. In addition, there has been a lack of evidence of the Robofish ever being functional. With this in mind with the addition that the project was never intended to include work on the Robofish beyond upgrading the battery and adding the necessary circuitry components to control the charging, we are reluctant to spend more time on repairs. While having a working Robofish would be ideal for our demo, it is not a project requirement and hence not our top priority.
RCS Arduino Program
A program was written in Arduino where the motor is driven in either direction accordingly. When the Robofish comes in to dock and flips the microswitch, the motor is driven forward to tighten the screw to secure the Robofish.
Once the Robofish has completed charging, the motor is driven backwards to unscrew, releasing the fish. An emergency stop and release button has been implemented which can be pressed manually to forcefully stop the RCS to halt its current mode of operation and release the fish.
A voltage divider has been implemented on the circuit board to reduce the 12 V connection detection from the fish down to approximately 5 volts. The resistors used are 4.67 kohms and 8.1 kohms. The reduction is carried out since the original voltage exceeds the capacity of the Arduino which is 5 volts.
When the reduced 12 V connection is detected on the Arduino, the motor driver will continue screwing in the forward direction for a set amount of time determined in the code before stopping. This is done to ensure that the motor does not screw the beyond the strain of the container. Over-screwing may cause undesired results such as cracking and deterioration of the container.
The counter has been updated and as illustrated in the software diagram, the counter will increment a value of 1 every time the Robofish attempts to connect to the RCS. The RCS will anticipate a 12 V loopback connection once the microswitch has been activated within a certain period of time after which it will let go of the Robofish back into the body of water should the limited time expire. After 10 counts, the RCS will stop functioning and seize the Robofish indefinitely until manually deactivated.
During the testing of the functionalities of both the Robofish and the RCS, the PCB was not functioning as expected. However, in its place, the breadboards under experimentation for the purpose of verifying the code were used instead. The code worked as anticipated though the 12 V loopback was not examined since the 12 V battery on the RCS side was missing.
Robofish Arduino Program
The relay control was implemented on the Robofish, where it is connected to the balance board. Having done so will help maneuver the control buttons in order to activate the charging from the Robofish side of the process.
The code below in C++ performs this:
Test Results Summary
Preliminary Pool TestRobofish Orientation
When released in the pool the Robofish did not float upright, it floated on its side. This is an indication that the center of gravity has moved above the center of buoyancy on the fish. This is most likely due to the new battery being lighter than the old.
New battery weight: 805 grams
Old battery weight: 2075 grams
980 grams of steel was added to the battery compartment to compensate for the lighter battery. The Robofish will be tested again to ensure it floats upright.
The surface of the foam guides is rough due to the cutting techniques that were used to construct them. When the Robofish floated up and contacted the guide surfaces, edges got caught on the foam causing the fish to roll and not properly ascend. This risk was identified before the test and plastic sheets have been ordered to provide a smoother guide surface. The plastic will be installed and another test will be run.
Guide to Float Adhesive
The adhesive that was used (liquid nails) to hold the foam guides to the polyethylene floats was not sufficient. Several pieces of foam broke free during the testing, even while there was no forces other than buoyancy acting on them. This could be due to an incompatibility of liquid nails
Attachment System Inconsistent
The attachment system to connect the Robofish to the RCS worked but inconsistently. Sporadically, the attachment motor stopped turning and sometimes the RCS connector did not start the attachment process when the Robofish connector entered it.
The most likely cause is loose wires. A breadboard was used due to PCB problems. Several times throughout the testing the battery wires pulled out of the breadboard. More commonly, the microswitch wires were disconnected. Soldering all the connections should fix this issue in the future.
Another possible cause is that the Robofish connector is not always activating the microswitch. The microswitch requires tight tolerances that ensure its button is protruding enough into the RCS connector so that the Robofish connector engages it.
The wires will be soldered first. If the problem persists, small dimensional changes will be made to the RCS connector to ensure microswitch activation.
During transportation to the pool test the frame fell apart. This was due to some of the hidden corner 80-20 connectors being not fully tightened. It is difficult to ensure they are tight and when one popped out the rest of the frame followed. To solve this problem, external corner connectors were installed in addition to the hidden corner connectors. It is much easier to ensure that these are appropriately tightened.
Risk and Problem Tracking
The Issue Management System can be downloaded Here.
The risk registry was updated and the following changes were made:
- Risk 2 was closed due to the decreased likelihood of a team member dropping the class
- The likelihood of risk 4 was increased. Due to setbacks it is increasingly appearing that too many resources were spent on tasks outside of scope (fixing the Robofish)
- The likelihood of risk 5 was increased due to results seen from preliminary testing. The guides performed poorly at positioning the Robofish for attachment. Plastic sheeting will be installed to hopefully remedy this
- The severity of risk 6 was reduced because it was determined to be partially out of scope.
- The likelihood of risk 10 was significantly increased because of problems with wiring the Robofish.
- The likelihood of risk 11 was increased, it partially occurred
- Risk 15 was closed because it is inherent risk in any project
- The likelihood of risk 17 was decreased because an increased budget was received.
- Risk 18 was closed because preliminary splash tests demonstrate it is too unlikely
- Risk 22 was closed because risk 5 is nearly identical
- Risk 23 was closed because the motor was tested and provides much more torque than necessary to complete the attachment. It will break the connector before it stalls
- Risk 25 was closed because it occurred and a new battery was bought as a solution
- Risks 26 and 27 were added to address recent issues with the RCS and Robofish charging circuits
The full risk register can be downloaded Here.
The draft poster can be downloaded Here.
Technical Paper Draft
The draft technical paper can be downloaded Here.
Note: The draft contains much more information than the final paper. Content will be cut to conform to the 8 page limit.