Monthly Archives: January 2011

Tom.DeVito 1.13.2011

Hand interface:

  • Added more glue to protect the strain gauges.  Need to let this dry.
  • Applied circuit mounted strain gauge to one of our sensor sticks to see if it will A. adhere properly, B. be more durable the the others, and C. be sensitive enough.  Most likely I will stick with using the standard gauges for this prototype but I wanted to look into the others.

Learning Electronics:

  • Now that I have a basic understanding of the electrical theory,  I switched from my physics book to Bebop to the Boolean Boogie.  So far its mostly bee a reinforce for what  learned in physics 2 but this book is more focused on EE.
  • Have read the first 6 chapters

Some revelations

  • semiconductors are isolators in their natural state but can be treated with other elements to carry negative or positive charges through a doping process.
  • have a bit better understanding of ohms law(V=iR).  This is very important in understanding the relationship between voltage, current, and resistance
  • diodes only allow electric to travel one direction.  If it goes the other way it is considered off.  This can be useful to translate A/C circuits to binary D/C circuits.  Not sure what their other functions are.
  • Capacitors still confuse me.  Apparently they act as off switches when they are filled and power sources when voltage drops.  Will have to read the chapter on RC circuits it may help my confusion.
  • Resistors of the same rating will greatly increase the current at higher voltage.  This makes sense mathematically with i = V/R but is not how I thought they worked.
  • Transistors are super fast switches.  The first computer used electromagnetic switches and took 6 seconds to do simple multiplication problems.  Triodes(tubes) were also used as switches but were also very bulky and slow.  Diodes and transistors are semiconductor switches and are much faster and more compact then their predecessors.  The next iteration will probably be a quantum switch but they are having coherence issues with these devices at the moment.  I believe this type uses a fiber optic system instead of silicon based.

Phil 1.13.2011

8:00 – 4:00 VISIBILITY

  • Looks like the Unix server that we thought we might be getting is in fact a web page that we could edit on an existing server. Which isn’t at all what we need. The guy (Charles H.) who’s handing the ticket is looking into the matter to see who we have to talk to to get a real server
    • Update – CH found a place that might be able to set up a server for us. He sent me an email on my other accounts with the info. I’ll check into it tomorrow.
  • Talked to Mike Cowan today about sharepoint. He agreed with Walter Jones that communication between VISIBILITY and Sharepoint could be done by a webservice that sends a list consisting of zipped db tables in a list. Even more simply, we can get data out of Sharepoint by having the data table webpage (webpart?) provide an RSS feed of the data, which would be pretty easy to parse. No data upload that way though
    • We also wrapped the VISIBILITY Data Navigator web page inside a webpart in Sharepoint. It worked just fine.
  • Ordered a bunch of stuff for the FP
  • Testing PPM
    • Got an error when selecting a user to modify:
      • status: false
        sqlStr: SELECT * FROM user_roles, roles WHERE login ='pgfeldm' AND role_id = id
        statusString: Error occurred during runSQL()
        errorString:
        exception: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Table 'project_portfolio.user_roles' doesn't exist
        data:
    • The vertical sizing of the panels is off. This may be related to the fact that the Arial font is being used again?
  • Worked a bit on ProjectTrackLite
    • Building in Flashbuilder and Maven
    • Using Mike’s new DynamicPanel. Need to add a listener/handler for a closeEvent.
    • Adding bits to FGMUtils
    • Working on the login. Trying it with the SingletonDataDictionary

Dong Shin 01.13.2011

  • PPM Changes
    • added more sqls to DBUpdateSQLs.sql… tested.
    • fixed a bug on User Management not saving First and Last names correctly.
    • backed up project_portfolio to project_portfolio_01132011 working
    • renaming of a table caused client to choke. removed from the script
    • found that auto scroll of panels doesn’t work properly when panels are changing too fast?
      • changed EdgeUtils to support force scrollToIndex()

Christine 01.12.2011

  • Setting up windows laptop to mirror current development environment (includes updating some pretty out of date copies of software, like Eclipse from 2008)
  • After completing setup, checked out both MavenAssist and AirFileImageApp. Unfortunately, I’m getting more errors than I can count on MavenAssist and I believe it has to do with the way the environment is setup. Currently set Phil an email for feedback

Tom.DeVito 1.12.2011

Repairing the hand:

  • Insulated all top-side strain gauge areas with primer and paint.
  • Put down a layer of glue and let it partially dry
  • Attached strain gauges to sticky surfaces and let dry a bit more.
  • Added a second coat of glue on top of the strain gauges.
  • Will add one more layer of glue tomorrow when current glue is completely dry.

Computer controlled amplifier:

  • Found a cheaper and most likely better way to convert usb to i2c:  http://www.acroname.com/robotics/parts/R286-USB-I2C.html
  • Drivers and example software can be found here: http://www.robot-electronics.co.uk/htm/usb_i2c_tech.htm
  • Found out that qucs and spice are really designed to test integrated circuits you want to make.  This is why I was having trouble finding models of various ICs.  However I am pretty sure in qucs you can package modules and link them together, so it may still be possible to model macro circuits.  I will look more deeply into this tomorrow.
  • Learned that an i2c bus  does not need any switches to route its message.  All message routing is dependent on the i2c slave devices hardware address set on the IC.
  • I think the device above produces a strong enough signal to control multiple devices without having external power introduced to the bus.  Adding this to my questions for Clift.
  • The variable amplifier has two power inputs and two grounds.  One pair is for the i2c controller the other is for the amplifier.
  • The usb device outputs 5v at 70ma.  This maybe enough for the i2c controller but probably not enough for the amplifier.
  • USB devices only output 100ma so anything you want to power via usb can only add up to this much. I am pretty sure the reason why a regulated power supply like the one we have can power many things at a constant voltage is because it varies the current by the resistance of the connected devices.

Dong Shin 01.12.2011

  • working on testing script for database upgradability….
    • created test script to see if there are any missing relations, DBSelectTest.sql
    • added force delete of missing relations to DBUpdateSQLs.sql
  • meeting with Heather Hundt for Non-profit org.

Phil 1.12.2011

8:00 – 4:00 VISIBILITY

  • It looks like S3 might be able to let us have a Unix (Linux?) Server equipped with Tomcat and mySql
  • Working on requirements app. Table descriptions are here. More requirements to follow, probably
  • Interview with Walter Jones
  • Wrote a Java test for interviewees. We’ll see if we use it.

Tom.DeVito 1.11.11

  • Experimented with some of the circuit simulators(spice, qucs, oregano).  Not a lot of luck finding a model database for the ICs we want to use.  It is possible that they exist but I only figured out that they are called models a couple minutes ago.  A little surprised that the manufactures don’t include this with their documentation, since it seems spice is a standard, but maybe they want you to burn out a couple chips before you get it right….  I am not quite sure how the models(text files) are built.  It may be possible to build it based of the data in the data sheet for the circuit.
  • We need to buy 8 * DS4420n found at https://shop.maxim-ic.com/storefront/priceavailable.do?Partnumber=DS4420N%2B&event=PartSearch&menuitem=PriceAndAvailability.  We only really need 5 but they are cheap, so its good to have extras in case some get burned out to avoid more shipping fees.
  • We also need http://www.i2ctools.com/products.html#USBtoI2C.  I think we should get the elite because the elite can talk directly to slave devices while the pro can only talk to master devices.  The DS4420n is a slave device so we would need some type of intermediary if we got the pro.  The elite also has a much fast bandwidth closer to usb which may be needed sometime.
  • Address for DS4420n are set by routing the a0 a1 a2 pins to either gnd of vcc.  gnd makes the bit 0 vcc makes the bit 1.

Dong Shin 01.11.2011

  • PPM Changes
    • the current month didn’t get highlighted properly – changed the logic, works now.
    • added method to record when user modifies previous month’s data
      • doesn’t record when initial data is entered (when the cell is NaN)
      • added created_time to track dates and times separately
      • user changed data from 2502 to 2502.3 in Project ID – 104 Year: 2011 Month: 3 Row: Reported Actual Obligated $:

    • working on database check up for upgrade

Phil 1.11.11

7:30 – 5:30VISIBILITY

  • We should do something to celebrate at 1:11 this afternoon
  • Wrote up a quick estimate of the effort required for the S2/SV effort
  • Working on the VIS4 plan – finished initial. Need to break into a set of traceable requirements
  • Looking for a requirements tracking package. Eclipse has some nice vaporware (useme), and there are a lot of bug trackers like jira, but nothing else I can find. Grr.

Tom.DeVito 1.10.10

Attempting to figure out a way to have the computer control the volume of an audio amplifier:

  • Reference for electronic diagram symbols:  http://library.thinkquest.org/10784/circuit_symbols.html
  • Reference for how to use a multi-tester: http://www.wikihow.com/Use-a-Multimeter
  • The amplifier potentiometer gives the best volumes between  992- 950 ohms.
  • To measure current, the multi-tester needs to be in series with the circuit.  I am removing the potentiometer from the amplifier circuit so I can put the multi tester in series after it and read the range of current.  How many amps the current is will determine if I need to use a jfet or mosfet transistor for the voltage controlled resistor.

After taking off the potentiometer, we realised that this may not be the best way to have our speakers volume controlled.  We are looking into a couple of different IC amplifiers with programmable gain control.  See tomorrows entry for more details on this.

Other uses for capacitors besides storing energy to be released in burst or dimming lights.

Mike 1.10.2011

  • Made it so one CollapsibleContainer may container other CollapsibleContainers to form something like a tree
  • Working on a quad layout
    • It equally divides up any container to give the first 4 elements 1/4 of the space
    • Any elements over 4 are ignored and left above the rest in the z-order
    • Users may ‘focus’ one quadrants which will resize that element to fill the container and bring it on top of the other elements
    • unfocusing the element puts it back in its original place
  • Now need to make something resembling a report in a quad chart, may need to come up with some way to roll-up information so unfocused quadrants display some kind of reasonable summary

Phil 1.10.2011

8:00 – 4:30VISIBILITY

  • Ann made a nice big spreadsheet of + data, which I broke up into nice-sized bits and ingested. I added Matt and Anne to the role and told them that the data was up. We’ll see what happens next.
  • Writing up requirements for VIS4
  • Finally did the 312 briefing
  • Pointed Tom at programmable amplifier IC chips

Dong Shin 01.10.2011

  • PPM Database Update Procedures with the script,  DBUpdateSQLs.sql
    • backup the database using following command from command line
      • mysqldump -d -u root -p project_portfolio > project_portfolio_backup.sql
    • login to database from command line at the directory where the DBUpdateSQLs.sql is located
      • mysql -u root -p
    • select database to modify at the mysql prompt
      • use project_portfolio;
    • run the script from the mysql prompt
      • source DBUpdateSQLs.sql;
    • if anything goes wrong, you can revert to old database by restoring the database from the backed up file
      • mysql -u root -p to get mysql prompt from command line
      • drop database project_portfolio; in mysql prompt
      • create database project_portfolio; in mysql prompt
      • source project_portfolio_backup.sql; in mysql prompt
  • PPM Changes
    • changing code to work with new DB structure….
    • 1 Year projects support added
    • complete database schema created, but not implemented on the current database

Mike 1.7.2011

  • Figured out there are actually 2 web servers running on fgmdev.com, one on port 80 and one on 8080.  I was deploying to the one on 8080 while trying to connect on port 80
  • Spoke to Brian this morning and I’m not going to try and get out  more fully functional demo to give the customer an idea of where we are headed then go back and build the framework.
  • Started this task by making a collapsible SkinnableContainer which, when compressed, displays only a header and a ”+’ button to expand it, expanding it them displays the widget which for now is either RichText or a datagrid
  • Learned something new about TextFlows,  I originally thought they acted like the data providers for RichText components.  turns out they are in fact themselves gui components and not simply a data class.  This screws up my plan of having the display and text editor point at the same TextFlow.  I’m either going to have to make copies or figure out another way to do data binding with rich text.  I found this out when having a demo with multiple text areas all pointing at the same TextFlow.  It worked fine until you minimized one of the collapsible containers.  The null pointer exception in FocusManager immediately made me realize TextFlows can’t be shared… actually it was more like my big toe hurting because my arm was broken.