Chap 9

Up Chap 1 Chap 2 Chap 3 Chap 4 Chap 5 Chap 6 Chap 7 Chap 8 Chap 9 Chap 10

 

These pages are under construction.  Always have been, always will be -

ENGINEERING NOTE BOOK CHAPTER 9

(Earlier chapters)

42. Yet Another Rotor Rebuild (2004-05-24 to 2004-07-08)

After we came back from an extended RV trip (8 months) and then a shorter one 3 weeks) I wanted to get the SETI Net antenna up and running again.  I quickly found that It had suffered some water leaks.  I put aside the development of the SETI data base (POD 41 below) and started on the antenna.

When we left on our trip I lowered the antenna to its stowed position - this was June of 2003.  When I returned I could not get the antenna to raise itself. 

Hung up in its stowed position

Antenna resting on sawhorse

After struggling with the jin pole for a day I managed to lower the antenna to a metal sawhorse and then remove the rotor from the pole.   Most of the heavy work was done using a winch attached to the antenna pole.

   Rotor removed to my workbench

When the rotor was opened and the low end gears detached, a few hits with a 5 lb. sledge hammer dislodged the main elevation mount from its frozen state.  The main thrust bearing was found to be rusted and the main cause of the seizure of the rotor.

   frozen bearings

After searching around the town for a set of replacement bearings I finally found them at a auto parts store along with the additional information that they come from a company with the strange name of Chicago Rawhide Inc. 

 Chicago Rawhide  is a very old company that got its start making bearing surfaces for the Conestoga wagons that were headed west from Chicago.  They really were made from rawhide.  Now they make all kinds of high tech bearings including the tapered roller bearings that will get me back on the air.

 

 

 

I decided to replace the elevation home sensing switch.  The old one was itself a replacement for the original and seemed worn down and ready to fail.  I picked up a   micro switch, with a leaf spring and roller, and fashioned a mounting bracket for it. 

Elevation Limit Switch

The switch is actuated when the elevation screw pulls up, moving the antenna down, so that the 2" washer contacts it.

With this in place I lugged the rotor back to the pole, raised it, and then raised the antenna to the top of the rotor.

As soon as I tried to move the antenna in elevation I know I had yet another problem.  I could hear the motor spin but the rotor would not move up or down.  I opened the rotor cover and could see that (gasp!!) I had forgotten to attach one of the gears to the motor shaft with a roll pin.  Not only that but when I moved the antenna in Azimuth I heard a loud crack.  Now I'm really in trouble.

Another six hours of struggle; first dropping that antenna back to the saw horse and then dropping the rotor; then dragging the rotor to my work bench and opening it; I found the next 'challenge'.

The major 'yoke' that holds the elevation motor in place had broken into three pieces.  Disaster.  After consulting with the folks on the Argus mail list and telling my sad tail, they to believe that I could build a new yoke myself.

The Yokes On Me (laugher please)

I ripped out and bought myself jig saw, best I could find (Home Depot - Bosch $165) and some 5/8ths aluminum plate.  Using the broken pieces as a template I was able to saw out the shape of the replacement yoke.  After much filing and at least 5 trips a day to Ace Hardware for tools and material, I had a replacement that looked good.

I put the rotor back together, making damn sure that all the parts were in there proper place, and then schlepped the whole thing back to the top of the pole. 

Using the Gin Pole

I raised the antenna back to the top of the rotor, held my breath to test it and....

I T   W O R K E D

Now I have to get the RS-232 buss running again from my computer to the antenna control box and I can get back to the data base development.

I now have the RS-232 Link running and life is good.

Task Complete.. (or so I thought)...

Now the RS-232 link is not working (ever had one of those months).  I rammed the antenna into the azimuth mechanical stop while not watching what I was doing and blew out the motor amplifier on the PIC Servo card.  I spent several day hunting in the San Diego area for a replacement for the LMD18201 and when I couldn't find one I ordered five from eBay.  A week later they came in and one was installed in the card without much trouble. But not the communications link would not work.

I thought It was the RS-232 to RS-485 converter that I had built inside the back shell of a RS-232 connector and while I was attempting to troubleshoot that I blew it out - damn. 

New Converter Under construction

Workbench out'a control

A couple more days building a new converter and found that the new one didn't work either - double damn.  After emails to J.R. Kerr I found that I had simply plugged the communication cables into the servos backwards.  That fixed and it finally works.

Just One More Thing

While working on the communications link the nice little Elevation Limit Switch assembly quit working.  A quick look inside the rotor case showed that the large washers that I had installed had come unscrewed and fallen off the end of the motor shaft.  since I was extremely tired of pulling the antenna off and on so many times I thought I would build a limit switch assemble on the outside of the rotor.

This was done and seems to work better than the old one.

Its been so long since I worked on the software I can't remember where I left off with it.  Now I have to back up through this notebook to see where I left off.

Now task Complete

41. Thinking Out Loud (2004-04-06 to 2004-05-24  )

I'm starting to get a handle on the database design and PHP and XML databases in general and need to start pulling it all together.  This is what I know about the server process needed so far:

1. PHP script to upload a WAV file.  This must do a HTTP upload to the database area (\public_html\SETI Net\Files\SETI Data) and test for duplicate names.  If a dup is encountered it will add an integer at the end of the name (first upload would be TEST.WAV, second would be TEST2.WAV etc.)  It must then enter the file name in the database (table "data_set" field WAVFileName in URI format).

2. PHP script to upload an XML file.  This will be the SML that is also embedded in the WAV file (client responsibility) and will carry the same dup rules as the WAV file.  When received it will kick off the parsing action.

3. Parsing - Each XML file will be operated on as follows:

  • Setup Handlers - element and cdata   
  • Submit to parser -  using fopen, xml_parse etc
  • switch on each of the elements and fill the database
  • Close the parser
  • Close the database

4. Client Response - Prepare PHP script for each of the following And/Or search and display requests:

  • By date or date/time
  • Operator name
  • Station location
  • SML Version
  • Antenna Mount, Shape, Horn
  • LNA Gain, Mfg, Noise figure
  • Receiver model and bandwidth
  • Weighting Window type
  • WAVFileName (exclude the URI portion of the name)
  • DataTime - From / To
  • Frequency - Upper and Lower window
  • DEC/RA or Az/El
  • Kind - Audio, Waterfall, Spectral

Each search and display must show the following by default:

WAVFileName, Date &Time, Frequency, DEC, RA, Operator

The rest of the display fields will come from the client search parameters.

I have decided to not attempt to change the default directory of the MySQL data base on the test system because of the horrendous difficulties encountered using MySQLDump.  I will leave the test database on My machine until it is ready to move to the iPowerWeb production server and then I will tackle the dumper.

 

40. Database development for SETI data (2004-02-12 to 2004-04-06)

I got sidetracked by changes to both the SETI Clock and the SML Generator.  These are again released and being tested by the SETI community. I can now go back to building a data base to contain the wave files created by a SETI station.  The problems I am working on are:

  1.  SQL Server  - This has come down to MySQL running on Apache.  Both are free and seem to work well -I have them both up and running under Win2000 on the portable that I am typing on now.
  2.  Server Code - I will use PHP (PHP Hypertext Preprocessor) to build the server side code.  This is also a free tool and integrates well with MySQL and Apache.
  3. Client - I want the users software to be the SML Generator for a start.  This means that the MySQL server has to be accessible remotely rather than through the standard HTTP interface to it.  This is presenting a problem. 

Problems:

  1. The SETI Net main server  has MySQL on it but the owners will not allow remote access to it.  I don't understand what use a database sever is if you can't load it remotely but that's the way it is.
  2. PHP is not a very easy language to learn or use (not nearly as nice as Delphi) but I am struggling through it.
  3. I need a test bench.  I might load Apache/MySQL/PHP on one of the computers on SETI Net for a start.  They will be slow to outside users because they are on an asymmetrical cable with low speed download but that should be alright for testing.
  4. I have enlisted the help of my grandson Zachary to help set up the test bench.  He has installed the Apache server on his machine and has it up and running.  He is now working on installing MySQL.  Some problems have been encountered.  As we work the problems we message each other using AOL Instant Messager.
  5. I am getting a handle on PHP (its not as bad as  I had first thought) and have learned how to control the server using it. 
  6. The PHP books on the market are not very good.   The ones that I have bought in an attempt to find a useful one are:

"PHP Pocket Reference" by Rasmus Lerdorf -  O'Reilly.

  A good reference but incomplete.

"MySQL by Kofler - Ai Press.

 Covers PHP in a long chapter and I need to understand MySQL as well.  Seems to be a good book.

"PHP For the World Wide Web" Ullman - Peachpit Press.

Shot full of errors and not one example have I been able to make work. 

"XML and PHP" Vaswani - New Riders.

 A good introduction to the SAX and DOM parsers I need to make a decision on which processor I will use.

"Professional PHP4 XML" Argerich et al - Wrox

Just got it used through Amazon.  Looks good but to soon to tell.

"PHP: Visual blueprint" by Whitehead et.al - Visual Books

 Junk

It turns out the version 4.2.0 and later of PHP uses a different method of accessing Web-Related Variables.  All the books, except the pocket reference, must have been created before this change so that accounts for the bulk of problems I was having with the examples in the other books.  I would like to find one good book the covers the up to date world of PHP and MySQL before I go completely nuts.

  1. Concurrent with learning PHP I am attempting to get the main SETI antenna back on line.  The antenna rotor will still move the dish in Azimuth but cannot move in Elevation.  This is a known problem with the rotor itself and will require that the dish is removed from the rotor mount, once again, and fixed.  To see what is involved see what it required last time it happened (Engineering notebook Chapter 7).
  2. I have erected the gin pole and remove the antenna and then the rotor.  The rotor is in my shop for repairs.  I have a couple of new limit switches that will be added so that I won't be caught in this position (able to lower the antenna to the point that it can't raise itself) again.
  3. I have a simple PHP script running on the SETI Net server that makes it possible to upload WAV files for processing.  This was harder than I thought it would be because the web server is configured to protect itself against uploads.  Because of this protection you can upload to the FTP area but can't get access to the files for inclusion to the database - so FTP is out.  This script uploads files to an HTTP area where they can be incorporated into the MySQL database and worked on by the server XML parser.
  4. The XML parser installed on the iPowerWeb (my ISP) server is SAX.  I will try to make sure the DOM parser is not available before I attempt to learn the SAX protocol.  The parser I use in the client (the SML Generator) is the DOM so, again, I must learn something else new.
  5. I have been asked by one of the SETI Net Clock users to modify the way the clock starts up.  Now it comes up in the Off position.  My thinking was that the user would want to enter the station parameters and then start the clock computing.  The user, Peter Cheasley, has asked that the clock start in the running condition.  I'll make this change and release the clock again.

Stay Tuned.......

39. Database development for SETI data (2003-12-05 2004-02-11)

The SML language is stable enough to work with and the SML Generator has been released.  Its now time to build a place to save the data generated by SETI stations.

The tasks are:

Server - This requires a learning process on my part.  First step is to select a database server to use.  This was solved - the server will be mySQL since its now running on the SETI Net server and it is free.  It was downloaded and installed on the SETI Net development computer and is up and running.

Database - The next step is to create a SQL database that reflects the SML Schema.  The prototype will be installed on the development computer and then moved to the server when it seems to be stable.  This work is underway.

Web Presentation - After that I must learn PHP the (PHP Hypertext Preprocessor) language so that I can present the database to the user over the internet.  I have purchased a MySQL book, "MySQL by Michael Kofler" that seems to cover what I need to know.

Create Client - I will write a Delphi client that will be used as a test bead to access the SQL database over the internet.  That code will then be incorporated into the SML Generator so that the user can automatically upload tagged WAV files for sharing with others.

Up ] Chap 1 ] Chap 2 ] Chap 3 ] Chap 4 ] Chap 5 ] Chap 6 ] Chap 7 ] Chap 8 ] [ Chap 9 ] Chap 10 ]