Giter VIP home page Giter VIP logo

rtes's People

Contributors

bastiaangrisel avatar synchro-- avatar

Stargazers

 avatar

Watchers

 avatar  avatar  avatar  avatar

rtes's Issues

Show more values on PC

Give feedback to the user about the speed of the motors

List of values to be shown:

  • Motors RPM
  • Sensor values
  • Control/Filter variables
  • Lost packets
  • Joystick values

Do measurements during lab

Minimum measurements that must be conducted (and documented) include
the internal control response time of the ES (typically, the control loop time in ms), the system response
time as perceived by the user (i.e., the time between joystick movement or key-press, and QR response), and the associated QR yaw, roll, and pitch response (in terms of a time plot) in order to properly assess achieved stability performance.

Logging

Logging data from QR to the PC.

Possibly buffered in the ES RAM first > see X32's programmer manual.

QR ==> PC

  • Sensors
  • outgoing actuators ( ae[i] )
  • System time
  • system mode
  • Control loop time
  • incoming joystick keyboard data
  • Control parameters & Signal processing data
  • whatever

PC ==> QR

  • User response: joystick/key press and system feedback

Make a send error function

This function should send all kind of predefined errors
At the pc these errors must be mapped to a string that the user can read
also define error messages like:

define ERROR_MESSAGE 'E'

define ILLIGAL_MODE_TRANSITION 'M'

define MODE_CHANGE_MOTOR_TURNING '1'

define MOTOR_CONTROL_NOT_ALLOWED_IN_THIS_MODE 'C'

Timing analysis

what is the time that it takes on the QR to act upon the JS?
What is the typical control loop time

Send messages from QR the right way

Currently, messages are 'sent' via printf. We need to send back in the same way as we receive on the QR (so with control, value and checksum). There must be some put_char function in X32 to do this.

Refactor main.c

The main file is becoming too long. Main should be small and there should be separate files/methods for communication, sensor reading and filtering, feedbackloop and motor actuation.

There are ~20 global vars, maybe a reduction is possible by making some calls more functional

LEDs on QR

Make sure that a status LED is on the QR as well (just as on the nexys). Maybe we can make a fancy blinking LED thing.

Tune important values on the fly

Make sure that we can adjust all important values via the keyboard. When giving the demo, we can then just tune it a bit if the TA's ask us.

Specify all control messages in types.h

Instead of having magic chars everywhere in the code, specify an enum (of defines) with all the control values. This makes sure that they are all in one place and make the overall code less sensitive to errors

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.