- 18 Jan, 2015 4 commits
-
-
Daan Vreeken authored
The block will output 'true' when input positive >= input negative. new file: block/block_comparator.c modified: block/build.mk
-
Daan Vreeken authored
modified: controller/controller_load.c
-
Daan Vreeken authored
We now interpret it as 'from this point on, zero or more arguments of any type will do'. modified: controller/controller_load.c
-
Daan Vreeken authored
used to verify the arguments and types of block create functions, etc., but start by validating parameters for now. This helps a lot when writing .ctrl files as the parser will now stop with a sensible error instead of a segfault when arguments are mismatched. Some example output: ERROR: Invalid number of arguments! Expecting 1 argument instead of 3. ERROR: Argument mismatch while trying to set 'divider' param on block 'heater' ERROR: pand-test.ctrl:169: Error setting parameter ERROR: Argument mismatch in argument 1. Expected argument of type 'int' instead of 'char*' ERROR: Argument mismatch while trying to set 'divider' param on block 'heater' ERROR: pand-test.ctrl:169: Error setting parameter modified: controller/controller_load.c
-
- 17 Jan, 2015 6 commits
-
-
Daan Vreeken authored
modified: controller/controller_load.c
-
Daan Vreeken authored
This prevents copy/paste errors in a .ctrl file where a user would create two blocks with the exact same name. Since the functions returns void, we'll bail out using errx() here. modified: controller/controller_block.c
-
Daan Vreeken authored
modified: ec/block_beckhoff_el3xxx.c
-
Daan Vreeken authored
This allows the user to specify e.g. 'rtd_element_input1' => 'PT1000' in the params list of a .ctrl file. modified: ec/block_beckhoff_el3xxx.c
-
Daan Vreeken authored
Remove my *.il2c.c clean-up code now we've merged Jeroen's version. Conflicts: Makefile
-
Daan Vreeken authored
There's now only a single function left to set all 'check' bits of each input, instead of having 8 nearly identical functions, one for each input. modified: controller/ec/block_beckhoff_el3xxx.c
-
- 16 Jan, 2015 8 commits
-
-
Daan Vreeken authored
This way we can use one function to set a number of params. All blocks (including the il2c generator) have been updated with the extra argument. modified: Makefile modified: controller/am335x/block_am335x_adc.c modified: controller/am335x/block_am335x_pwm.c modified: controller/am335x/block_am335x_qed.c modified: controller/block/block_bridge_pwm.c modified: controller/block/block_counter.c modified: controller/block/block_filter_iir.c modified: controller/block/block_filter_lp.c modified: controller/block/block_friction.c modified: controller/block/block_gain.c modified: controller/block/block_inverse_proportional.c modified: controller/block/block_limit.c modified: controller/block/block_limit_2nd.c modified: controller/block/block_limit_var.c modified: controller/block/block_matrix_2x2.c modified: controller/block/block_pid.c modified: controller/block/block_pid_aw.c modified: controller/block/block_quantize.c modified: controller/block/block_rangecheck.c modified: controller/block/block_servo_state.c modified: controller/block/block_setpoint_generator_1d.c modified: controller/block/block_setpoint_generator_3d.c modified: controller/block/block_sine.c modified: controller/block/block_state_machine.c modified: controller/block/block_trajectplayer.c modified: controller/block/block_trigger.c modified: controller/block/block_value.c modified: controller/block/block_value_bool.c modified: controller/block/block_value_uint32.c modified: controller/block/il2c/il2c.c modified: controller/controller/controller_block.h modified: controller/controller/controller_block_param.c modified: controller/dt_azimuth/dt_az_safety.c modified: controller/dt_elevation/dt_el_safety.c modified: controller/ec/block_beckhoff_el2xxx.c modified: controller/ec/block_beckhoff_el3xxx.c modified: controller/ec/block_beckhoff_el4xxx.c modified: controller/ec/block_ec.c modified: controller/ec/block_ec_sim.c modified: controller/test/block_test_command.c modified: controller/test/block_test_input_bool.c modified: controller/test/block_test_input_float.c modified: controller/test/block_test_input_uint32.c modified: controller/test/block_test_output_bool.c modified: controller/test/block_test_output_float.c modified: controller/test/block_test_output_uint32.c
-
Jeroen Vreeken authored
Add module code in controller_module Introduce new test for module Use module in azimuth and elevation simulators Remove dedicated simulator blocks
-
Daan Vreeken authored
inputs that don't exist. We do this by reversing the order of the params list and feeding the ..param_list_add() function the params list, starting at the first check_input param that actually exists on the current hardware. modified: controller/ec/block_beckhoff_el3xxx.c
-
Daan Vreeken authored
modified: controller/ec/block_beckhoff_el3xxx.c
-
Daan Vreeken authored
(No functional changes.) modified: controller/ec/block_beckhoff_el3xxx.c
-
Daan Vreeken authored
o Add heaps of links to documentation. o Add a list of devices that are still missing if this driver really wants to support all EL3*** blocks. o Implement a number of missing (and needed) calculate functions. modified: controller/ec/block_beckhoff_el3xxx.c
-
Daan Vreeken authored
in the *_create() function. This makes it painfully visible that most blocks are missing code. (No functional changes.) modified: controller/ec/block_beckhoff_el3xxx.c
-
Daan Vreeken authored
(No functional changes.) modified: controller/ec/block_beckhoff_el3xxx.c
-
- 15 Jan, 2015 5 commits
-
-
Daan Vreeken authored
o Make the code halt in all unsupported cases where we would wind up without a calculate function. o Switch a number of blocks to 'unverified' that have obvious errors in their gain/offset table entries. o Document where we've found the data for the corrected table entries. This is an unfinished work in progress. Half of the blocks I have either don't work at all right now, or their output values are way off. o Introduce a first piece of code to test the selection of different temperature sensors on the EL3204 / EL3204-0200. This will eventually grow into parameters that allow the user to select different resistor curves per input channel. modified: controller/ec/block_beckhoff_el3xxx.c
-
Jeroen Vreeken authored
It was already enabled in the ethercat code, but that changed.
-
Jeroen Vreeken authored
-
Daan Vreeken authored
This is a forward-port of a commit made today to a project that is based on a version of the DT code from ~2012. The EL5101 has a 'C' input that can accept an index pulse from the encoder. Enable this input so the counter is actually reset to 0 on every pulse of the index pin. Note: Although by far most registers on Ethercat blocks are volatile, this register is non-volatile. When set to '1' once, this register will remain '1', even after cycling the block's power. (According to the documentation, all 0x8000:* and 0x8001:* registers are non-volatile.) modified: ec/block_beckhoff_el5101.c
-
Jeroen Vreeken authored
-
- 14 Jan, 2015 1 commit
-
-
Jeroen Vreeken authored
Cleaning only the block directory is not enough, there might be (and are) more.
-
- 13 Jan, 2015 9 commits
-
-
Daan Vreeken authored
modified: common/log/log.c
-
Daan Vreeken authored
-
Daan Vreeken authored
dev->tx_pdo_watchdog == true. Manually setting dev->tx_pdo_watchdog to false in individual blocks now allows the outputs of the blocks to remain active when the control loop is stopped. (We need this before we can safely connect our mains supply relays to Ethercat outputs..)
-
Jeroen Vreeken authored
Fix time code to properly recognize invallid combinations and return -1 Add new lowest common multiple calculation. (Subsample number now has a maximum of 10000, but this is an arbitrary limit) Add code to add frequency domain to .dot dump files.
-
Daan Vreeken authored
Yesterday's fix was wrong. The variable 't' wasn't missing, but it was a misspelling of 'tn'. modified: controller/trigger/trigger_prestart.c
-
Daan Vreeken authored
one recipe to be specified per target. When multiple recipes are defined for the same target, only the last one will be executed. This change makes executing the 'all' target in the controller/ or controller/block/ directory actually only build files inside these directories instead of starting a full build at the top level directory. Making 'clean' in either of these directories still cleans the entire build starting from the top level directory. I think this eventually deserves a second commit. I would like to be able to only 'clean' a subdirectory. modified: controller/Makefile modified: controller/block/Makefile
-
Daan Vreeken authored
modified: Makefile
-
Daan Vreeken authored
actually work again after the introduction of the BLOCK_CREATE() macro. modified: controller/ec/block_beckhoff_el4xxx.c
-
Daan Vreeken authored
-
- 12 Jan, 2015 7 commits
-
-
Jeroen Vreeken authored
(Only worked if actuall number of slaves was also 0, not for any other number)
-
Jeroen Vreeken authored
Add realloc function to controller_mem Move reallocs in blocks to new controller_mem functions Add test case for block_state_machine.
-
Daan Vreeken authored
modified: controller/dt_ctrl.c o Add include for 'controller_time.h' for the definition of the controller_time_process() function. o Make it more clear that we want the function to return 0 on success.
-
Daan Vreeken authored
modified: controller/trigger/trigger_prestart.c Add missing 't' variable when compiling on FreeBSD.
-
Daan Vreeken authored
modified: Makefile Remove test now that commit mails are working.
-
Daan Vreeken authored
modified: Makefile Commit mail test.
-
Daan Vreeken authored
modified: Makefile Commit mail test.
-