Friday, April 6, 2012

Fri., Apr. 6th

The Design Fair demo yesterday went more or less as planned, although several steps took longer than I expected - loading everything into the car at FSHSRC without help took a solid hour, and setting everything up at the Design Fair took an hour and a half even with students' help.  Also, I forgot to include a much-needed lunch break, which I ended up taking between 12:30 and 1.  However, despite these additional delays, we were still all up and running by about 2:30 pm.  Everything pretty much worked as expected, although the GPS antenna position we used (just outside door in middle of connector) did not have as much of a sky view as I was hoping because the antenna cable was not long enough.  As a result the GPS only got 0-2 satellites, but it did get at least 1 or 2 most of the time.  David measured the antenna coordinates and I updated the sitedefs.pl file with them so that POSHOLD mode would give valid times.

One thing we forgot to do was adjust the size of the window for identifying coincidence events for the new faster clock speed (currently 300 MHz instead of 200 MHz).  This, together with the wider separation of the detectors at the Design Fair (compared to the lab) may account for why we were seeing fewer showers at the Design Fair than we were in the lab - we effectively filtered out shower events at low angles, because the number of clock cycles that passed between when the shower hit one detector vs. another may have been larger in some cases than the window size (10 cycles) we are currently using in the FEDM firmware.  The window size amounts to 33 ns, which theoretically should be adequate to catch all near-lightspeed shower fronts, however, some extra slop might be needed in case one detector happens to catch particles that are closer to the front edge of the pancake than the ones caught by another detector.  Anyway, we need to remember to go back and adjust this parameter, especially after we get the speed up to 500 MHz.

It would also be a good idea to verify on a scope that the cable delay is really the same on all 3 cables - say send a pulse from a signal generator down all 3, look at the traces side-by-side on the scope.

After I left the lab Wednesday night, the ME students succeeded in getting the new Peltier cooler and fan mounted over the FEDM.  We still have not tested with the Peltier cooler under power; one reason is that we still need to do some experiments to determine the proper power level for it (so as to not over-cool and cause excessive condensation), and also a new power supply subsystem still needs to be designed to supply it appropriately.

Wednesday night the ME students also mounted Samad's existing power distribution board, since he had run out of time to make another board.  It is bolted down on one end, with a rubber stopper holding up the other end.  We can go ahead and try using Samad's board to power the system as soon as he re-routes that one pin (the green "supply on" pin) which is a change that can be patched in by hand, and find or make a longer cable (say 15") to run from the power board to the DE3.  I submitted a couple of RFQs for this cable to some custom shops.  Also, someone needs to make power cables for the detectors, with an appropriate connector at each end (barrel plug at the detector, two jumper wires with female sockets at the power distribution board).

Let me try to make a (more or less) methodical to-do list of all the various miscellaneous things that need to be done to finish up the hardware/gelware/firmware.  Many of these tasks require EE/ME collaboration.
  • [ ]  Buy a new GPS antenna with a much longer (100'?) antenna cable for installation at CLC.  (Check with Reed to make sure this length will be long enough.)
  • [ ]  Measure absolute signal propagation delays on all three of the 50 ohm coax BNC cables running from the detectors to the FEDAM.  (We can just measure them one at a time for end-to-end delay using a signal generator, splitter, and scope.)
  • [ ]  Buy or make a new longer (15"?) power cable assembly from Samad's board to DE3 board.
  • [ ]  Make some custom cable assemblies (~20' length?) for powering the detectors from Samad's board.
  • [/]  Also wire up power from Samad's board to the GPS, CTU Wi-Fi board, and FEDAM.
  • [ ]  Design & build new OCXO board.  (Remember to include a power capacitor this time.)
    • Designed, but still needs to be taped out for fab.
  • [ ]  Experimentally determine proper voltage level for powering Peltier cooler to achieve desired chip temperature with minimal condensation.
  • [ ]  Design & build a supply that delivers the desired voltage to Peltier cooler with adequate current.
  • [ ]  Cut suitable hole (s) in plastic cover for cabling & ventilation.
    • Or, cables can go thru a hole circular-sawed through the platform.
  • [ ]  Need a plastic tube to go down to main cooling fan from top of cover.
  • [ ]  Maybe also install an air outflow fan or fans.  Regular 12V fans are probably fine.  Hopefully Samad's board can power all fans (including the one on the Peltier cooler) from his 12V outputs.
  • [ ]  Solder the SMA connectors onto the FEDAM.
  • [ ]  Finish gelware changes / Quartus compilation settings needed to get FEDAM running at 500 MHz.
  • [ ]  Firmware:  Adjust the width of the coincidence-detection window appropriately for new speed.
  • [ ]  Install mounting brackets at CLC for 2 shelf detectors, 1 ceiling detector, & t he main electronics chassis.  Run cable conduits above ceiling for the power & signal cables from the chassis to the 3 detectors.
  • [ ]  Get network parameters for CLC's Wi-Fi network (SSID, WPA2 access passphrase); burn these into the Wi-Fi boards.
  • [ ]  Physically install detectors & chassis at CLC.
  • [ ]  Set up kiosk Mac with appropriate software (VirtualBox, Python 3.1.x, MySQL (or whatever DB we're using), UltraVNC server).  The UltraVNC server will allow development of our server software & visualization code to continue remotely.
  • [ ]  Physically install the kiosk Mac, and set it up on CLC's network.  I recommend not giving the public any access to the mouse/keyboard initially, at until the visualization software is complete.  Also, the monitor should be left turned off until the visualization is ready.  Also, before opening to the public, some way needs to be found to prevent the public from escaping out of the visualization application and popping back up to the OS.  I recommend no keyboard access (so user can't hit any of various escape sequences), and operating in a full-screen mode so the user can't close windows, etc.
Of course, there is lots of work left on the pure software side (server Python code) to do as well.  Here is a relatively high-level breakdown of just some of the new modules/classes that will be needed:
  • [ ] Database - Choose a Python API & a back-end database server.  Define tables.
  • [ ] Graphing - Find or write a Python module for scrollable, zoomable real-time graphs.
  • [ ] Timekeeper - Write interpolation code.  Use DB and graphing modules to track/plot time data.
  • [ ] PulseModel - Provide & update parameterized models of pulse shapes.
  • [ ] PulseFitter - Infer idealized pulse form from pulse data points.
  • [ ] Triangulator - Infer Earth-relative shower heading (incidence angles) from timing data.
  • [ ] DataCollector - Use DB, PulseFitter, Triangulator, to track data in real-time and pre-analyze.
  • [ ] Visualizer - Use DataCollector, Timekeeper, Graphing, DataCollector to make various plots.
  • [ ] ShowerEvent - Data type for storing data associated with a candidate cosmic-day shower event.
And I'm sure that isn't even close to being an exhaustive list...

No comments:

Post a Comment