Skip to content

4 Version History

Andreas Reiter edited this page Jan 18, 2020 · 7 revisions

v0.9.1.80 (01/16/20)

feature update

  • Feature: Added support for cascaded code modules allows to cascade (daisy-chain) functions. With this feature multi-loop systems can be established as code execution chain which are the called by a single function call.

  • Feature: Added Alternate Source And Alternate Target Pointers this feature improves the support of bi-directional converters by configuring the feedback loop for alternative data paths. Two new control bits are introduced allowing to switch between different sources and targets on the fly.

  • Improvements:

    • Code Generator Option Catalog Cleanup
    • In-App Help File Access
    • Overall Performance Improvements
    • Added new user guide, revision E

v0.9.0.75 (11/11/19)

feature update

  • Feature: Added three Data Provider Sources to the control loop data structure. These Data Providers are pointers to external data buffers (e.g. global variables) where users can decide to push internal run-time data to. Users can select to push these values:

    • most recent control input value (from source)
    • most recent control error and
    • most recent control output.

If the most recent data input (from source) is selected, data is also pushed when the control loop is disabled.

  • Internal Upgrade: C-Code generation is now fully based on an external code generator script, which allow users to modify the generated C-Code when desired.

v0.9.0.72 (11/07/19)

feature update

  • Feature: Added {Dummy-Read when Disabled} Option This option has been added for dsPIC33CH and dsPIC33CK devices where an ADC buffer always needs to be accessed when its ADC interrupt is triggered and the interrupt service routine (ISR) is called. This new option will add code for reading the specified data source register/variable even when the controller is disabled and the control loop execution is bypassed to prevent the CPU from stalling on dsPIC33CH and dsPIC3CK devices. This option is not required for dsPIC33FJ and dsPIC33EP devices.

  • Feature: Added {Second ADC Trigger} Option** In a multi-loop system control modes such as average current mode control, an outer loop (e.g. voltage loop) generates reference values for the inner loop (e.g. current loop). The duty cycle, frequency or phase-shift adjustment, however, is computed by the inner loop only. Any ADC trigger placement which needs to be aligned and synchronized with the switching waveform can therefore only be set once the inner control loop execution has been completed. As outer and inner loop may require two independent ADC trigger locations within one switching cycle, an option for placing a second ADC trigger has been added. The two available triggers ADC_Trigger_A and ADC_Trigger_B are equal and can be used as desired. When no second ADC trigger is required and the option is disabled, ADC_Trigger_B will be ignored by the control loop.

v0.9.0.70 (10/20/19)

feature update

  • Feature: Input signal offset compensation now fully supports controlled feedback inversion, allowing the design of bi-directional controllers which can seamlessly switch between quadrants.

  • Feature: Settings, which have been used to generate code files, are now stored in a history list located below the Bode plot. Users can use this list to reload previously used settings by doubleclick, SHIFT+ENTER hot key or a mouse context menu. Users can also label and rename or delete entries in this list.

v0.9.0.64 (10/19/19)

feature update

  • Feature: the previously introduced input offset compensation showed some short comings when the input voltage was unexpectedly lower than the given offset value. The new implementation now supports true bi-directional feedbacks by reliably generating seamless error signals in the positive and negative range. If a zero-line cut-off is required, this would have to be done in user code prior to calling the control library code. (This feature extension is on the list but not supported yet)

v0.9.0.60 (07/12/19)

bugfix update

  • Bugfix: fixes conflicts with the application certificate causing the setup program to fail. No changes have been made to the DCLD application itself.

v0.9.0.58 (04/17/19)

feature update

  • Feature: Feedback input offset is now supported by enabling the "Bi-directional Feedback" option on the 'Controller" tab. This will add lines to the assembly library subtracting a user defined value from the most recent input value.
  • Feature: Adding file location to the #include "xxx" pre-processor declaration in C-source and C-header files is now possible by selecting "Add file location in generated code #include path" option on the individual code generator tab

v0.9.0.55 (12/13/18)

bugfix

  • Bugfix: Wrong s-domain transfer function in the Block Diagram View was replaced with the correct equation.

v0.9.0.54 (11/29/18)

bugfix

  • Bugfix: The relative/absolute path translators introduced in version 0.9.0.53 generated file paths with double backslashes under certain circumstances. This bug has been fixed in this release.

v0.9.0.53 (11/28/18)

features

  • Feature: The source code file path defining the directory in which generated code files will be placed, now supports relative file paths to ease the use when moving/exchanging MPLAB X projects or when copying DCLD config files to new projects.

v0.9.0.52 (11/14/18)

features

  • Feature: (Mini-adder) CPU load calculation result in Timing view seems to be misunderstood sometimes. CPU load is only created when the MCU executes code and therefore the only value of the sampling frequency is of interest. This value, however, is adjusted outside the Timing window under control parameters.

v0.9.0.51 (11/11/18)

features

  • Feature: Anti-windup settings now support soft desaturation where the most significant error in the error history array is reset to zero (no error saturation)
  • Feature: Anti-Windup saturation flag bits are now reset automatically by the controller code library.

Please note: Code generation of anti-windup in assembly file has changed. Please make sure the auto-reset of the saturation flag bits does not create conflicts in diagnostics engines or fault handlers.

v0.9.0.50 (11/09/18)

bugfix

  • Bugfix: When opening DCLD by double-click on a configuration file, transfer function parameters may not get set correctly. This issue is now resolved.

v0.9.0.49 (10/05/18)

bugfix

  • Bugfix: Code Generator Update warning within Timing Chart Tab was not functional
  • Bugfix: Timing results table was overlapping on some screens. These items have been re-positioned.

v0.9.0.48 (10/05/18)

bugfix/feature enhancement

  • Bugfix: "Save" button remained disabled when parameters were changed under some conditions.
  • Progress bar in the lower right corner of the status bar indicating loading/saving/code generation processes got a label

v0.9.0.47 (10/04/18)

feature change

  • there is a new checkbox allowing the selection of internal Input Gain Normalization. When the input gain is set to non-"1" values and the normalization is enabled, the control loop gain will be changed to compensate the input gain variation. When this option is disabled (default) then the gain in the bode chart will have an offset and coefficients won't be affected.
  • Preparation for bi-directional feedback signal scaling (not enabled yet)

v0.9.0.46 (10/03/18)

features

  • the right side of the main window got a new tab showing standardized block diagrams, z-transform equations and flow charts of the selected controller type (read only)
  • The timing chart got a new analysis value indicating the expected CPU load, depending on selected code features, CPU performance and sampling frequency

v0.9.0.45 (10/02/18)

major feature change

  • the input gain setting will not affect the coefficient generation anymore. It now only adjusts the transfer function results so that results are correctly representing the physical system. Any decisions on gain adjustments do now have to be made by the user.

v0.9.0.44 (10/02/18)

bug fixes/features

  • added a progress bar function to the status bar (lower edge of the main window) to indicate activity during long processes such as code generation
  • replaced internal components to stay compatible with earlier versions of the Windows .net framework. This helped to resolve issues with setup programs and especially the thumb-drive version without installation process

v0.9.0.40 (10/01/18)

features

  • added a tool bar to enhance user experience

v0.9.0.39 (09/30/18)

optimization

  • minor internal code execution optimization without visible impact to the user

v0.9.0.38 (09/29/18)

bug fixes/features

  • changed the Copy Coefficient Table To Clipboard feature. It now copies a table in the form of the table displayed below the Bode plot with columns separated with tabs to be directly pasted in MS Excel
  • added scaled frequency entry. Frequencies can now be entered in the form e.g. xxxk for kHz. Supported scaling letters: T=Tera, G=Giga, k=kilo, m=milli, u=micro, n=nano, p=piko, f=femto
  • Bugfix: Updated references for code-highlighting libraries preventing machine-dependent .net version conflicts when opening the application.

v0.9.0.36 (09/29/18)

bug fixes/features

  • added warning bar to source code windows to indicate when pole & zero locations have been changed and a code generation process is pending/has not been performed yet
  • added debugging information about operating system, hardware and regional settings, which is printed to the output window at startup
  • BugFix: resolved a bug with the value of the input gain, which resulted in a wrong value if regional settings of decimal point and grouping letter differed from generic English settings
  • BugFix: optimized startup behavior and solved occasional problems with invisible controls (pole and zero entry boxes)

v0.9.0.35 (09/24/18)

bug fixes

  • added exception handlers to calculation routines to handle math errors like divide-by-zero or multiply-by-infinity
  • added status bar output when entered numbers result in non-processible result

v0.9.0.34 (09/19/18)

features

  • code generation in previous versions was acknowledged by a simple message box claiming that all files were generated successfully. Now a list of all files is shown indicating which files have been generated or skipped in accordance with user settings.
  • file "npnz16b.h" will always be generated when selected. The auto-deselect feature for this generic file was removed on request.

v0.9.0.33 (09/10/18)

modification

  • MPLAB XC16 v1.35 Linker crashed occasionally when a C-code and assembly source file have the same name. Now the generated assembly library gets the extension "xxx_asm.s" by default
  • after startup the generator target path in source file windows shows the filename. As this is not required (it's a directory path only) these have been removed.

v0.9.0.32 (08/19/18)

Bug Fixes/Features

  • resolved a bug in the variable declaration in the header file for fast floating-point scaling
  • resolved a bug in the code generation of register save/restore instructions added to assembly code, where the status register bit was always added, regardless of the option setting
  • resolved the issue of the gain folding upwards instead of dropping into the Nyquist abyss due to unresolved inversion in the conversion equation
  • Bode plot export now supports selection of s-domain and z-domain transfer function
  • Files can now directly be opened by double-click on a project file, however the file association is not properly set during installation or will not be present when you use a ThumbDrive version. under these circumstances, right-click on a *.dcld project file in Windows Explorer and choose the DCLD.exe application as "Open With..." default target.

v0.9.0.25 (07/27/18)

Bug Fixes/Features

  • change the data structure element ptrADCTriggerOffset, which was a pointer to a 16-bit variable to ADCTriggerOffset, which is now a true 16-bit value
  • internal, absolute path information used to work with internal resource files have been changed to become relative paths. (performance improvement)

v0.9.0.23 (07/26/18)

Initial release