Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 3 Next »

Symbol and connections

These blocks can be programmed to your liking. On the top side connections all inputs can be connected, on the bottom sides, all the outputs can be connected. The coding languange that is compatible with the programable controlers is Javascript. However, Hysopt evaluates the writen code in these programmable controllers every simulation step. This results that not all off the functionalities of Javascript are possible to be implemented. For instance:

  • While and with statements.

  • String inputs or outputs

  • ….

There are 3 options:

  1. Controller with 8 in/outputs

  2. Controller with 16 in/outputs

  3. Controller with 32 in/outputs

Writing code

In these controllers, code can be written to translate certain controls.

this can include things like:

  • assignment statements

  • if and if-else statements

  • switch statements

  • operators :

    • increment operators (++ and --)

    • unary operators (- and !) 

    • binary operators : power (^), multiply (*), modulo (%), divide (/), sum (+), min (-)

    • ternary operator (a = x ? b : x)  see https://www.freecodecamp.org/news/c-ternary-operator/

    • conditional operators (|| and &&)

    • comparison (<=', >=, >, <, ==, '!=)

    • mathematical functions :  exp, ln, sin, cos, sqrt, min(x1, x2), max(x1, x2)

    • comments : single line (//) and multiline (/*...*/)

here is an example with code : example.txt

Note that the inspiration library is filled with written code like this, so be sure to look here for inspiration.

  • No labels