1A Statics Notes

Apr 12th 2005

Janet Lees (jml2) is revising the IA Statics lab. Currently there are no computing requirements for this lab, however she would like to introduce a computing element. The vision -
  • There will be three groups of the 8 students.
  • There will be three unique trusses.
  • Each truss will have its own computer.
  • Each group of set of students will work on one truss at a time (until each group has worked on every truss).
  • Each group has its own set of weights.
  • Every bar on the truss has a digital gauge which measures strain.
  • As weights are added, so the students take a reading from each bar.
  • The students input the data into the workstation next to the truss.
As the data is collected, so it is sent to a fourth machine. This machine produces and displays (on screen) a graph based on the inputted data.

Eventually (although not needed for the first phase) Janet would like the results and graphs to get put on the web. This is because this lab is used for exposition, during which the students are required to write a report based on the lab.

Bob Hepburn has offered to lend Janet 4 PCs for the lab. She would like to try the lab out on the Headstart and Sutton Trust people (6th formers who are on a "try before they buy" day out around June/July time).


Today I produced a very drafty prototype - see the 1A Statics page. It's a PIN-protected facility that has tables for data entry. Tables can be made 'read-only'. Output is currently text-only but graphics would be welcomed.

Recorded with each piece of data stored is who stored the data, and there's provision for storing the person's 'group' too. The "group" concept isn't yet used - maybe 'read-only' pages could be unlocked only by those in the same group as the original locker? Navigation's not tidy either.

It uses 2 mysql (database) tables - Statics1AData and Statics1ALocking

April 14th

Using gd looks like the easiest way to provide on-the-fly graphics in various formats. It's not currently installed on the webserver, but the odds are it will be within a few weeks.

April 15th

Some other points and issues

April 18th

Another database table (1AStaticsUser) added, to record when users were active and to store who the supervisors are.

April 19th

In the development version (which you're welcome to try) I've added a facility so that supervisors (currently just me!) are offered a chance to go into supervisor mode. Currently the mode lets supervisors list users by date of last access.

April 21st

Access controls in general need to be thought about - what type of access should an individual have to their own group's data and to other data? What should supervisors be able to do - move someone from one group to another? Can the computer do some admin chores?

April 25th

The Development version's been tidied up a little. Users can't save if the data's currently locked by the user. Also the menu that offers file download formats now produces files in the required formats. The CSV (spreadsheet) file might contain the correct contents. The other varieties contain dummy output.

April 28th

In the Development version supervisors now can add/remove supervisor powers for users - note that they can currently remove their own supervisor powers.

July 19th

In the Development version supervisors now can add new users. Here's a checklist of things to worry about

July 22nd

After discussion with jml2 I've changed a few things

August 1st

GD's installed. The GIF and PNG options on the output page now produces sample graphical output -

August 3rd

Tidying up. Work done on the output options - can now choose the material, and the matlab-format option now produces a file containing the supplied data. Here's a sample output file
% matlab file for tpl showing Steel data
kn=[0, 0.249, 0.498, 0.747, 0.996, 1.245, 1.495, 1.744, 1.993, 2.242];

displacements=[-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1;
0, -1, 3, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1;
100, -1, 4, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1;
200, 300, 5, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1;
300, -1, 6, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1;
400, -1, 7, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1;
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1;
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1;
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1;
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1;
];
I need to make the graph provision more general, but options could easily ramify. What do users and supervisors need? Variables include but the behaviour of steel member 2 and aluminium member 5 may need to be compared on the same graph (indeed, I suspect graphs will most often be used for making comparisons). As a start I'll add options to the interface on the "output" page.

August 5th, 9th

To think about

August 25th

jml2 has given the program 2 recent tests and has provided pages of feedback. I've fixed some bugs and have improved/added features. Progress so far

September 12th

After a rehearsal some mods are going to be suggested by jml2. Meanwhile, we've come to a compromise on authentication. Each session's worth of students will have a password, and supervisors will have a password to an account that's sufficient to start a browser.

I've had to change several things to make the "group password" thing work. The first page (which needs more work to make it friendlier) now invites people either to login as a supervisor using their PIN, or to login as a group. I've removed mention of the term "user" where it's inappropriate.

Once people have managed to log in, things should be much as before. Note

September 15th

Another round of revisions, and some regression testing done. Here's a brief summary of work done and work remaining.

June 2006

The 1AStatic lab uses 5 database tables owned by tpl - On 28th June 2006 I made copies of these. The copies have an extra "2005" on the end of their names - Statics1AAttendance2005, etc.

September 2006

Here I'll made a list of what needs to be changed each year. And here are some modifications I made on 5th September. I also removed some unused code (code in the student-code that only supervisors use, and vice versa). Other mods were suggested. Here are my short-hand replies Several fixes were made at the end of September To-do list

October

The input data might be shown as read-only because
  1. It's been locked by people who are doing the lab that day (an UNLOCK button is available)
  2. the data isn't for the lab that's running on that day (no UNLOCK button is available)
I've added a "Data locking" option to the Supervisor page. For each group it shows the Locking status of the data.

Old data is by default "Locked by age". There's an "unlock" button to override this locking. If that button's used, then the data becomes "Unlocked by supervisor". There's a "lock" button which will change the state to "Locked by supervisor." Data relating to the current day's lab or to a future lab is marked as "not done".


Updated October 2006
Tim Love