ECE 449 Computer Systems Engineering Assignment 7

Your submission should follow our general guidelines. Please follow object-oriented principles.

  1. Modify the assignment 6 program to use the mouse to move resistors around the screen. Double-clicking a resistor should bring up a dialog box (JOptionPane) to modify the name, value, and orientation of the resistor. Clicking on an empty spot should instantiate a new resistor. See MouseTest for example code. Use command-line argument or JFileChooser as before to input the netlist. When you close the program, bring up a JFileChooser to name an output file with the modified netlist.

  2. Write a Java program, modeled after Solve2.java to read an input file in the form A b where A is a square matrix and b is a column vector (see example below) Calculate x from A x = b and display the results in a text area

    Example input:

        0.20   -0.05     0.9
       -0.05    0.40     0.5
    

  3. Write an Arduino program to step a servo motor from -160 to 160 degrees in steps of 20 degrees. You should also write a utility program to set the servo to zero degrees. This will allow you to manually adjust the sonar mount.

  4. Write an Arduino program to read sonar values. Find the maximum and minimum distance for which you can obtain reasonable readings. Test the accuracy of the readings.

  5. Write a processing program to interface with the Arduino and display graphically a sonar display, showing range (distance) vs. angle. You will also need a Arduino program to control the hardware and send serial data to the processing program with angle, range information. Note, handle the case of "no return" in some appropriate way.