Table of Contents
Team Vision for Detailed Design Phase
Plans of the Detailed Design Phase
Our overall team plan for this phase was to, as always, improve on the designs posited in the previous phase. A major new goal of this phase was to make preparations for MSDII by creating a variety of documentation as well as uploading and organizing files on EDGE.
The computer engineering team found the complete Arduino code from our predecessor team at the beginning of the phase, and their goals quickly shifted to accommodate this new development. The team planned to spend time delving into the code to better understand its purpose. In addition, with the arrival of the UPS, the team planned to explore the potential for integrating UPS functionality into the Arduino software.
The electrical engineering team planned to order a remote antenna switch based off our previous analysis. Given this addition to the overall system, a change to the electrical schematic would be required. The team also planned to work with the mechanical engineer to plan out the placement and mounting of the newly arrived UPS within the available project space in the PC box.
Accomplishments of the Detailed Design Phase
The computer engineering team integrated the UPS into the system and made sure that it performed with the correct functionality. They also studied and were able to confirm that the code found at the end of last phase and beginning of this one was in fact close to the latest code from that last team that can be flashed down to the Arduino to control the dish motor and actuator. The FTP script that was found on the E-Callisto website was integrated and tested.
The electrical engineering team received the UPS and remote antenna switch. The team implemented both devices into the electrical schematic, creating a more complete picture of our overall system. In addition, the team cleaned up some of the wiring in the PC box with the help of the mechanical engineer, taking the opportunity created by shortening some of the cables from the PC box to the dish.
The mechanical engineer designed a housing for the remote antenna switch. The remote antenna switch will reside in the smaller box along with the eCallisto box and two of the four calibration methods (50-ohm termination and the calibration kit). This housing will ensure a stable connection between the remote antenna switch and the calibration devices while providing an easier mounting method.
Objectives for this phase
- Receive and integrate Hardware.
- Perform component level Spec checks on the hardware.
- Select and purchase an antenna switch.
- Run a UPS Performance checks.
- Analyze the need for cooling in the Hardware case containing the PC, Arduino, UPS and the two power supplies.
- Examine and analyze the code found at the end of last phase.
- Decompile the code currently on the Arduino.
- Rewrite the Arduino code.
- Setup and Integrate the UPS with the system.
- Finalize the communication protocol from Radio eyes to E-Callisto.
- Automate the FTP system to send files to Zurich.
- Relax and recover over Thanksgiving break.
- Prepare for the DDR Review.
- The UPS, Arduino, Antenna Switch, and Lightning Arrestor were received and inventoried.
- The Component level Spec checks...
- The antenna switch was chosen, approved, ordered and received.
- The UPS was integrated and tested for functionality and performance.
- The mentioned code (as well as additional code) was exactly what we were looking for and will perform all necessary functionality.
- The Perl script from the E-Callisto website has been setup and will perform all functions that we will need.
- Relaxation and Recovery were performed with much thanks.
- As seen below and above the DDR Review was prepared for and practiced.
Objectives Not Met
- The Analysis of the need for cooling was not conducted as it was not a priority.
- The code does not need to be rewritten or decompiled per the found code being proficient.
- The communication protocol between radio eyes and E-Callisto was worked on but not finalized due to time restraints.
Decisions Made this Phase
- This phase we found that the UPS was going to need securing in the Hardware case. A design was created and approved this phase for securing the UPS. All of the parts have chosen but not ordered.
Further questions for Customer/Guide
- What questions does the team have for the customer and/or guide in order to continue moving forward?
Drawings, Schematics, Flow Charts, Simulations
Remote Antenna Switch Case HousingRAS Device (Model made from manuf. schematic)
- Plan in place to 3D print the RAS housing for precision (Brinkman Lab, Denis Cromier contact).
- Bottom housing will be mounted to the system using a small patch of Velcro.
- Housing can either be epoxied together or we can have slotted tracks placed in the housing to keep it together, however, this might not be too durable if 3D printed.
UPS Mounting Inside PC BoxMounting choices are currently under development. Design Requirements:
- View-able screen and controls
- Removable enough to change battery.
- Weight of UPS does not impose stress on any other components in the system.
- Solution is temperature resistant to the weather.
Current UPS constraint ideas:
- 6 elongated and thick steel L brackets, 2 brackets for 3 sides.
- 2 steel threaded rods about a pencil width in thickness to act as 'straps' connect to 2 sets of opposing brackets.
Upper Level System Block Diagram
For a full sized image of the above block diagram, click the image above.
- Setup, lookUpPinInterruptAttachment, loop and IsInitialized
- These functions represent the base of the code calling all other portions and setting up the main loop
- AccelerometerSetup, ReadAccelAngle, readAccelData, initMMA8452, MMA8452Standby, MMA8452Active, readRegisters, readRegister, writeRegister
- These functions encompass all of the functionality that the accelerometer will need. One of the key functions is readAccelData which does some bit manipulation on the registers to get the acceleration data.
- CommunicationSetup, CheckCommunication, ProcessPacket, ProcessPacket_InitFromDriver, ProcessPacket_Optional, Command_InitFromDriver(long laPulses, long laMaxRunTime, double laDutyCycle, double maxLACurrent, long rotaryPulses, long rotaryMaxRunTime, double rotaryDutyCycle, double maxRotoryCurrent, double maxTemp, double minTemp, double maxHumidity, double minHumidity, bool includelaCurrent, bool includeRotaryCurrent, bool includeMaxTemp, bool includeMinTemp, bool includeMaxHumidity, bool includeMinHumidity, Command_InitFromController, Command_IsInitialized, Command_IsConnected, Command_AbotSlew, Command_Slew, Command_GetPosition, LookupValue, ValExists, WriteStateChanged, WriteUpdateComplete, WritePosition, WriteRotaryReference, WriteUninitializedAccess, WriteInitializeComplete, WriteMissingParam, WriteTemperature, WriteHumidity, WriteTempSensorError, WriteAccelerometerConnectionFailed, WriteCurrent, WriteReport, WriteUpdate, WriteError, MotorStateTostring
- The Communications portion of the code has a good deal of functions that perform all of the functionality needed to communicate from the arduino to the PC and from the Arduino to the dish motors (both the motor and linear actuator)
- ControlSystemSetup, GeneralControl, GeneralLANextState, GeneralRotaryNextState, GeneralNextState, GeneralControl2, CalibrateControl, CalibrateNextState, GetSpeed, GetLASpeed
- InterruptHandlersSetup, LAHallAISR, LAHallBISR, RotaryHallAISR
- SensorSetup, double GetHumidity, readData, CheckTempHumidity, CheckCurrents, LAPowerCheck, RotaryPowerCheck, GetLACurrentValue, GetRotaryCurrentValue, CheckRotaryReferenceReport
- These functions perform all of the controls needed to get information and manipulate the motor and Linear actuator
Bill of Material (BOM)
Bill of Materials
Test PlansA unified list of detailed test plans has been created in this test plan, which was driven by the Engineering Requirements below. As tests are performed/refined, this document will be modified accordingly to provide a centralized document for test plans and results.
|ER No.||Source From CR||Importance (1-5, 5=highest)||Category||Requirements||Unit||Ideal Value||Acceptable Value||Planned Test||Test Results||Details|
|ER1||CR1, CR12||5||Mechanical||Device housing weatherproofing||IPx Rating||IPx7W||IPx4*||Leave System running overnight in various weather conditions||Incomplete||Wiring is still under progress|
|ER2||CR1, CR12||4||Mechanical||Environment temperature||°F||68-75||10-95*||Leave System running overnight in various weather conditions||Incomplete||Wiring is still under progress|
|ER4||CR7, CR11, CR12||5||Mechanical||Feed horn antenna bandwidth range||MHz||30-900||50-890||Send a signal at the high and low end of the bandwidth||Incomplete||Feedhorn has not been purchased yet.|
|ER5||CR6, CR12||4||Electrical||UPS operating time||minutes||15||10||Fully charge UPS and attach to system then remove power cable.||Undocumented||Exceeded expectations|
|ER6||CR1, CR2, CR8, CR11, CR12||5||Electrical||Remote antenna autocalibration precision||% error||5*||10*||Input antenna frequency with known output, compare it to measured.||Incomplete||Obtained switch, awaiting cables|
|ER7||CR10, CR12||2||Electrical||Low noise amplifier gain||dB||*||*||-||Incomplete||Temporarily on hold, as it might not be in budget.|
|ER8||CR1, CR2, CR3, CR4, CR5, CR9 CR12||5||Software||Remote data collection & transfer rate to Zurich||Mbps||25*||23*||Send data from computer to Zurich on their FTP and observe.||Complete||Sent a file from system computer to Zurich with login provided.|
|ER9||CR1, CR2, CR4, CR5, CR12||5||Software||E-Callisto Sampling Rate||Samples/sec||1||10||Take a data set and see if the data is precise enough over a time span.||Complete||System Spec sheet.|
|ER10||CR1, CR2, CR8, CR11||4||Software||No. of times system is calibrated per day||calibrations/day||1||2||Check System log and scheduler to see how many times system was calibrated||In Progress||Pending test plan/procedure|
|ER11||CR1, CR2, CR4, CR12||4||Software||Error checking accuracy for data collection||% error||1||5||Send a corrupt data file to server and see if the system detects it.||In Progress||Need to verify corrupt file, if not detected, won't be used by Zurich.|
|ER12||CR1, CR3, CR5, CR6, CR7, CR8 CR9, CR10, CR12||3||Misc||Project Cost||Dollars ($)||<500||500||None||In Progress||Adhearing to budget and have set aside funds for aspects needing money|
|ER13||CR1, CR3, CR5, CR6, CR7, CR8 CR9, CR10, CR12||5||Software||Arduino code can operate Motor and LA to high accuracy||% Pos. Error||<1%||1%||Attatch the motor, LA, power to system, check if Radio Eyes operates||In Progress||Awaiting 1st upload to arduino|
- Removed ER3 because UPS was ordered to fit the enclosure.
- Updated ER5 progress with UPS basic UPS test result
- Updated ER6 progress with arrival of antenna switch
- Updated ER 10 and 13 with discovery of arduino code
|Risk ID||Category||Risk Item||Effect||Cause||Likelihood, L (1-3) 3=most||Severity, S (1-3) 3=Worst||Importance, L*S (1-9) 9=most||Action to Minimize Risk||Owner|
|R1||Technical||Improper feedhorn installation||Feedhorn may have loose mounting or be unable to be assembled.||Heating or cooling during drilling.||1||3||3||Use heat sink and lubricant during feedhorn installation||Mechanical Engineer|
|R2||Technical||Unreliable internet connection to Zurich||Packets of information could be dropped||Severe thunder storms or overcast weather||3||1||3||Provide data backup until Zurich server confirms reception||Computer Engineer|
|R3||Technical||Dish may be too heavy for motors/actuators||Tracking functionality is lost, manual repairs required||Ice buildup, power depletion, errors in measurements||1||2||4||Provide flags and warnings to warn users of imminent disruption||Computer Engineer|
|R4||Technical||File transfer system error||Zurich server receives incomplete data||High frequency of power interrupts beyond design of UPS||1||2||2||Provide data backup until Zurich server confirms reception||Computer Engineer|
|R5||Technical||Auto-calibration error||Incorrect data analysis, manual repairs required||Drift of control systems over time||2||3||6||Provide recurring updates to autonomous calibration results||Computer Engineer|
|R6||Technical||TeamViewer software error||Remote operation made difficult or impossible||Incorrect data structures and / or program speed||3||1||3||Use cross-platform coding techniques||Computer Engineer|
|R8||Technical||RadioEyes/LabView incompatibility||Additional time required for integration solution||Incorrect data structures and / or program speed||1||2||2||Use cross-platform coding techniques||Computer Engineer|
|R9||Technical||Feedhorn selection may carry unexpected collaterals (integration)||RX levels may become inefficient for extraction from raw signal||Mismatching impedance and frequency response||2||2||4||Perform extensive testing on feed/dish assembly||Electrical Engineer|
|R10||Technical||eCallisto software error||Data may be corrupted or incorrect; Zurich may not recieve data at all||Improper program setup / unforeseen program error||1||2||2||Perform extensive software testing and provide data backup||Computer Engineer|
|R11||Technical||Internal EM interference within subsystems||May cause errors in computer operation or other subsystem operation||Improper magnetic shielding on power lines near vulnerable systems||1||2||2||Isolate magnetic interference, or place wiring more carefully||Electrical Engineer|
|R12||Technical||Improper power management||One or more subsystems failing due to internal power loss||Power delivery system insufficient to meet power needs||1||3||3||Perform extensive power system simulations||Electrical Engineer|
|R13||Technical||Internal subsystem overheating||Damage to one or more subsystems||Improper cooling systems or lack of temperature sensor||2||3||6||Place temperature sensors in overheat locations||Mechanical Engineer|
|R14||Resource||Scarcity of integration and/or testing facilities||Project receives unexpected delays waiting for facilities||Primary facilities are 1 hour away.||2||1||2||Establish carpools and overlap schedules to ensure effective use of lab||All|
|R15||Resource||Insufficient budget to meet all project requirements||May need to take performance hits to accommodate cheaper budget||Limited funds (~$500)||1||1||1||Design and build where possible||All|
|R16||Resource||Destruction of "Suntracker" project hardware||Loss of unique designed hardware, project delays||Incorrect assumptions about input levels and tolerances||1||3||3||Implement strict guidelines for interacting with unique hardware||All|
|R17||Resource||Inadequate space to assemble and test||Team may not be able to prove that the project works||Necessary space or devices not easily available||1||3||3||Ensure that proper space or devices are reserved well in advance||All|
|R18||Resource||Theft of system components||Irreplaceable components may be lost||Improper storage of materials||1||3||3||Lock physical project materials in a locker||All|
|R20||Resource||Critical team member or project sponsor becomes unavailable||Project will be more difficult to complete without assistance from team member or guidance from sponsor||Team member or sponsor is injured or unavailable||1||1||1||Obtain guidance from faculty advisors; Maintain team awareness||All|
|R21||Resource||Insufficient manufacturing tools available||One or more subsystem additions may not be able to be completed||Limited budget and/or resources of RIT or sponsors||1||2||2||Prioritize subsystems based on accessibility||All|
|R27||Resource||Missing parking code||Rewrite code||Code not found||3||1||3||Contact prior team||Computer Engineer|
|R23||Safety||Team member injury during construction||Slowed rate of project work while team member recovers||Improper safety measures taken during construction and use||1||2||2||Observe proper safety rules during device construction and operation||All|
|R24||Environmental/Social||Other unwanted data could be intercepted||Zurich server recieves incorrect data||Improper selection of device reciever frequency||1||2||2||Observe proper FCC rules and regulations||Computer Engineer|
|R25||Environmental/Social||Transmission of RF data could cause interference||Remote operation difficulty, conflict with TV/radio stations||Improper selection of device transmittal frequency||1||2||2||Observe proper FCC rules and regulations||Computer Engineer|
|R26||Environmental/Social||Remote log-in to unit may pose security threat||Sensitive data may restrict remote login||Malicious actor obtaining password/login information||1||3||3||Ensure strict security in regard to username/ password information||All|
- Removed Risk 7: UPS Incorrect AC Power due to leakage currents and parasitics
- Removed Risk 19: Insufficient Data Storage. FIT file estimation improved.
Action Items for MSD IIThe action items that we have to address moving forward include: MechEng:
- Milling the clevis block for the LA attaching bracket
- Designing the wooden mounting brace to mount the motor and LA for testing
- Mount the UPS inside the case (model is underway)
- Discuss 3D printing of RAS case with Denis Cormier in the Brinkman Lab.
- Debugging any of the Arduino code that may be faulty (only to be expected if the code is not the last revision which was reportedly working)
- Compatibility checking between Radio Eyes, eCallisto and the Arduino code
- Wire in RAS.
- Finish rewiring and cable routing to final destinations.
- Formalize wiring schematics for accurate work archiving
- Circuit checking and debugging.
- System testing, something that we have been unable to earlier in this project due to the lack of a full code or proper documentation of the wiring. For the most part this is all cleared now.
- As a team I think we should all become more fluent in eCallisto and learn to run the program to make it easier to troubleshoot moving forward.
Plans for next phase
- The above Gantt Chart can be downloaded and manipulated using the live document.