Category: BSA

BSA – Select

This is a mind experiment. The select operation will need to specify which table it shall read, and in this example I just drew the Modbus Table and used a relation between the select statement and the table. I am not sure if I want to allow this, but it is an option. Tables can…

Read the full article

BSA – Failure of the week

I quickly tested using my mini-editor to edit source code and this is a mistake. The idea in this case is that you write a statement block – a small script in PScript that execute a small operation – this is intended for assign operations, but you can write a full PScript program if you…

Read the full article

BSA Compiler

This figure illustrate the work flow of the code generator that I decided to call “BSA Compiler”. The BSA Compiler will read the project file and compile the output source code that can be used by a standard IDE/Compiler to compile/link the target executable. The BSA Compiler will also verify project content because a lot…

Read the full article

BSA – Editors

This shows BSA Table editors in use -I need to use them a little myself to verify if they are ok – I admit it is a bit confusing to have description in the table and then have to edit it as a property. But, the mini tekst editor is actually great. DataType is only…

Read the full article

BSA – Table Events

Tables are objects with their own methods and events, so the example below grab events from tables and process them. This is the same as adding a start label with the event name as the PLDFlow link will need to be connected to an Event and a Method and convert data between them. Event comes…

Read the full article

BSA – Data Flow

BSA contains two techniques to model data. One is classic ER Diagrams and the second UML Class Diagrams. Class diagrams provide an object oriented approach that will go well with languages like C++, C# and Java, but a class is basically only a definition of a new datatype that you can declare as a variable…

Read the full article

BSA – Styling Native Controls

It is two controls with an identical border on the picture above. The button display the border correctly, while the ComboBox do not display the border at all. It does have a BorderBrush that I set, but it has no effect. This is quite common with build in native controls – it might be a…

Read the full article

BSA – Code Generator Results

And this is the result of the code generator. In C++ and C# you can use inheritance – simply use a base class for symbols, autogenerate a HMIButton_base and then create the final HMIButton manually – this is a nice way to allow autogenerated code while you still have the full manual control. C# have…

Read the full article

BSA – Assisting Code Generator in place

This example is the property list for Button. This is just an early draft, but as I added more properties to Button yesteday I realized that this would take some time with the number of components involved as every property require a bi of coding. So using a CSV file allow me to use Excel…

Read the full article

BSA – Generating Code

I am sitting setting up all the properties for the components and it is a bit of work for each component, so what I want to do is one of my usual tricks to code using Excel. Simply by creating a CSV list, read it into a C# app and generate all the property settings…

Read the full article