Difference between revisions of "App Developer"

From Flowcode Help
Jump to navigationJump to search
(16 intermediate revisions by 2 users not shown)
Line 1: Line 1:
==What is Matrix SCADA?==
+
==About App Developer==
  
SCADA stands for "Supervisory Control And Data Acquisition", and refers to systems that are designed around allowing users to remotely control and monitor hardware using simple, intuitive interfaces.
+
[[File:AppDev1.png|App Developer Overview]]
  
Matrix SCADA is the name of the technology which allows you to 1) Create and test SCADA projects in Flowcode, and 2) Deploy these projects to run inside the Matrix SCADA runtime. The Matrix SCADA runtime is a piece of software now included with your Flowcode installation, from version 8.1 onwards.
 
  
 +
In Flowcode v8, we introduced significant new functionality that we called the “SCADA” feature.  In v9 we decided to rename this to “App Developer” because the old name did not explain its full potential.  App Developer allows you to easily create programs to control and monitor devices external to the PC. But it is much more than that. Flowcode App Developer allows you to create general purpose programs with user interfaces that calculate, plot and display information. It can gather information for from your desk, from inside your building, in your town, and across the world over the internet.
  
==Flowcode's SCADA mode==
+
Flowcode App Developer uses the same programming interface as Flowcode Embedded. So if you know Flowcode you can now easily design Windows Apps for your own use or for royalty free distribution to others.
  
From Flowcode 8.1 onwards, owners of the SCADA feature pack can access the new SCADA project mode. Inside Flowcode's SCADA mode, there is a new set of components, and a simpler, more streamlined interface geared towards people who wish to write programs targeted at Windows PCs, rather than microcontrollers.
+
One particular strength is that Flowcode App Developer contains a large number of communication components that allow you to create distributed control, data gathering and analytical systems so its particularly good at creating SCADA like systems using Application Programming Interfaces (API). Support for popular USB, Bluetooth, and Web based hardware platforms like Modbus PLCs, Arduino, Raspberry Pi, Ethercat and other systems are provided.
  
Usage of this mode should be familiar to traditional Flowcode users. However there is an additional feature here that is not available in the traditional Embedded mode. Matrix SCADA deployment.
+
Flowcode App Developer is a paid for software application. It allows customers to create run time free apps which can be shared with many users.  
  
  
==[[SCADA_API_Targets|SCADA API Targets]]==
+
[[File:AppDev2.png|App Developer Use Cases]]
  
Comprehensive table of target I/O devices which have a built in API within Matrix SCADA. This page will list the api source files, drivers and the embedded firmware required to send to the hardware to allow Matrix SCADA to communicate with the API.
 
  
  
==[[SCADA_Examples|SCADA Example Projects]]==
+
==Examples of App Developer applications==
  
Visit this page to get a comprehensive list of detailed Flowcode SCADA example projects. Download and see the code and try incorporate the ideas into your own SCADA projects.
+
App Developer is a programming language that can be used for many applications. It is particularly useful for creating control, data gathering and analysis systems: local and remote.  
  
  
==[[Matrix_SCADA_Deployment|Matrix SCADA Deployment]]==
+
===Desk based===
  
Matrix SCADA deployment allows you to take your Flowcode SCADA project, and deploy it as a standalone piece of software (known as a Matrix SCADA runtime application) built on top of the Matrix SCADA runtime. You are free to distribute this resulting application to users who don't have access to Flowcode, and don't have any license. End-users are prevented from viewing the source code of your program, as well as modifying the behaviour of the flowchart. They do however, have access to various Flowcode panels of your choosing, but cannot affect any changes to components. They also cannot modify component properties unless you explicitly grant them access.
+
[[File:AppDev3.png|Desk Based Example]]
  
Click [[Matrix_SCADA_Deployment|here]] to learn more about Matrix SCADA deployment
+
An electronic circuit board under test. is placed in a jig which connects it to a power source, a MIAC with a Flowcode Embedded program, an Arduino Uno with a Flowcode Embedded program and a TTI signal generator.
 +
 
 +
The Flowcode App is designed to run a series of tests on the hardware by controlling the PSU and the embedded devices so they interact with the device and measure its responses. Results are logged to a local file on the hard drive.
 +
 
 +
 
 +
===Building based===
 +
 
 +
[[File:AppDev4.png|Desk Based Example]]
 +
 
 +
An array of sensors monitor the environmental conditions within a greenhouse and display the status via internet on a mobile phone. 
 +
 
 +
Depending on these inputs, the application controls devices within the greenhouse such as heating/lighting and moisture levels to maintain optimum growing conditions for the plants.
 +
 
 +
The system consists of three MIAC controllers linked by CAN bus with one linking to the PC using USB. The MIAC controllers are programmed with Flowcode Embedded.
 +
 
 +
 
 +
===World based===
 +
 
 +
[[File:AppDev5.png|Desk Based Example]]
 +
 
 +
The PC application monitors building entry access and controls the environment.
 +
 
 +
It uses keypads and/or locks with RFID tag readers built in, and grants or refuse access to certain doors and areas depending on the code given.  It also monitors temperature and controls lights.
 +
 
 +
A record of visitor and employee movements is recorded and can be displayed on web based devices to determine where they currently are in case of an emergency (e.g. evacuation due to a fire).
 +
 
 +
Flowcode Embedded is used for developing the software for MIAC controller and the Raspberry pi custom IO and Broker. The Broker effectively acts as a web connected portal through which all data is stored and flows.
 +
 
 +
 
 +
 
 +
 
 +
This section will go over how to start a SCADA project and start using one of the pre-built API's within Flowcode.
 +
 
 +
 
 +
==[[App Developer Deployment|App Developer Deployment]]==
 +
 
 +
Once you have completed an App Developer project, you may wish to deploy it as a standalone program to allow your team or your customers to use your App to communicate with your hardware. Note App Developer can only currently deploy applications for Windows based devices.
 +
 
 +
==[[Connected Devices|Connected Devices]]==
 +
 
 +
Comprehensive table of target I/O devices which have a built in API within Matrix App Developer. This page will list the api source files, drivers and the embedded firmware required to send to the hardware to allow Matrix App Developer to communicate with the API.
 +
 
 +
 
 +
==[[App Developer Examples|App Developer Example Projects]]==
 +
 
 +
Visit this page to get a list of detailed Flowcode App Developer example projects. Download and see the code and try incorporate the ideas into your own projects. The App Developer Templates can also be a great place to get examples and help to speed up a project.

Revision as of 13:36, 8 October 2020

About App Developer

App Developer Overview


In Flowcode v8, we introduced significant new functionality that we called the “SCADA” feature. In v9 we decided to rename this to “App Developer” because the old name did not explain its full potential. App Developer allows you to easily create programs to control and monitor devices external to the PC. But it is much more than that. Flowcode App Developer allows you to create general purpose programs with user interfaces that calculate, plot and display information. It can gather information for from your desk, from inside your building, in your town, and across the world over the internet.

Flowcode App Developer uses the same programming interface as Flowcode Embedded. So if you know Flowcode you can now easily design Windows Apps for your own use or for royalty free distribution to others.

One particular strength is that Flowcode App Developer contains a large number of communication components that allow you to create distributed control, data gathering and analytical systems so its particularly good at creating SCADA like systems using Application Programming Interfaces (API). Support for popular USB, Bluetooth, and Web based hardware platforms like Modbus PLCs, Arduino, Raspberry Pi, Ethercat and other systems are provided.

Flowcode App Developer is a paid for software application. It allows customers to create run time free apps which can be shared with many users.


App Developer Use Cases


Examples of App Developer applications

App Developer is a programming language that can be used for many applications. It is particularly useful for creating control, data gathering and analysis systems: local and remote.


Desk based

Desk Based Example

An electronic circuit board under test. is placed in a jig which connects it to a power source, a MIAC with a Flowcode Embedded program, an Arduino Uno with a Flowcode Embedded program and a TTI signal generator.

The Flowcode App is designed to run a series of tests on the hardware by controlling the PSU and the embedded devices so they interact with the device and measure its responses. Results are logged to a local file on the hard drive.


Building based

Desk Based Example

An array of sensors monitor the environmental conditions within a greenhouse and display the status via internet on a mobile phone.

Depending on these inputs, the application controls devices within the greenhouse such as heating/lighting and moisture levels to maintain optimum growing conditions for the plants.

The system consists of three MIAC controllers linked by CAN bus with one linking to the PC using USB. The MIAC controllers are programmed with Flowcode Embedded.


World based

Desk Based Example

The PC application monitors building entry access and controls the environment.

It uses keypads and/or locks with RFID tag readers built in, and grants or refuse access to certain doors and areas depending on the code given. It also monitors temperature and controls lights.

A record of visitor and employee movements is recorded and can be displayed on web based devices to determine where they currently are in case of an emergency (e.g. evacuation due to a fire).

Flowcode Embedded is used for developing the software for MIAC controller and the Raspberry pi custom IO and Broker. The Broker effectively acts as a web connected portal through which all data is stored and flows.



This section will go over how to start a SCADA project and start using one of the pre-built API's within Flowcode.


App Developer Deployment

Once you have completed an App Developer project, you may wish to deploy it as a standalone program to allow your team or your customers to use your App to communicate with your hardware. Note App Developer can only currently deploy applications for Windows based devices.

Connected Devices

Comprehensive table of target I/O devices which have a built in API within Matrix App Developer. This page will list the api source files, drivers and the embedded firmware required to send to the hardware to allow Matrix App Developer to communicate with the API.


App Developer Example Projects

Visit this page to get a list of detailed Flowcode App Developer example projects. Download and see the code and try incorporate the ideas into your own projects. The App Developer Templates can also be a great place to get examples and help to speed up a project.