Difference between revisions of "App Developer"

From Flowcode Help
Jump to navigationJump to search
 
(9 intermediate revisions by 2 users not shown)
Line 1: Line 1:
==About App Developer==
+
__TOC__
  
[[File:AppDev1.png|App Developer Overview]]
+
Flowcode App Developer allows the creation of general-purpose programs (or “apps”) with user interfaces that run on a Windows-based PCs, tablets, mobile phones, etc.  These apps can interact with a wide range of devices and data sources, both local and remote.
  
 +
Typically, these apps will provide a Human Machine Interface (HMI) to interact with devices and systems that are usually remote to the device hosting the app (PC, mobile phone, etc.).  These remote systems might be hardware you have developed, 3rd party devices, or websites and other sources of data that can be accessed via the Internet.
  
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 thatFlowcode App Developer runs on a Windows PC in your office or factory. But it is designed to make applications that work everywhere: on your desk, in your building, in your town, across the world.  
+
In addition, App Developer projects will usually interact with multiple devices and systems (just like embedded projects are likely to interact with multiple attached peripherals and/or remote systems)And they can even interact with other App Developer and Embedded projects.
  
Flowcode App Developer contains a large number of communication components that allow you to create distributed control, data gathering and analytical systems.
+
[[File:App Dev1.png|center]]
  
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.
+
App Developer is comprised of 2 distinct features – [[PC_Developer|PC Developer]] and [[Web_Developer|Web Developer]].  Whereas Flowcode Embedded projects are developer to run on the embedded device itself, App Developer projects will run on a PC or within a browser and will typically be used to communicate with remote embedded systems.
  
A key part of Flowcode App Developer is to interface to multiple hardware systems using APIs. Support for popular USB, Bluetooth, and Web based hardware platforms like Modbus PLCs, Arduino, Raspberry Pi, Nest and other systems is provided.
+
There are a lot of similarities in how Embedded and App Developer projects are developed.  The main difference is the actual intended target device.  Embedded projects are used when the target will be an embedded device such as a chip or a single-board computer. PC Developer projects will create apps that run on Windows PCs and Web Developer projects will create web pages that can be run on any PC or device that supports a browser.
  
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.  
+
[[File:App Dev2.png|center]]
  
  
[[File:AppDev2.png|App Developer Use Cases]]
+
==Links==
 
+
[[Web_Developer|Web Developer]]<br>
 
+
[[Web_Developer_Getting_Started_Guide|Web Developer Getting Started Guide]]<br>
 
+
[[PC_Developer|PC Developer]]
==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===
 
 
 
[[File:AppDev3.png|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===
 
 
 
[[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 other 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.
 
 
 
 
 
==[[SCADA_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.
 

Latest revision as of 08:28, 12 December 2023

Contents

Flowcode App Developer allows the creation of general-purpose programs (or “apps”) with user interfaces that run on a Windows-based PCs, tablets, mobile phones, etc. These apps can interact with a wide range of devices and data sources, both local and remote.

Typically, these apps will provide a Human Machine Interface (HMI) to interact with devices and systems that are usually remote to the device hosting the app (PC, mobile phone, etc.). These remote systems might be hardware you have developed, 3rd party devices, or websites and other sources of data that can be accessed via the Internet.

In addition, App Developer projects will usually interact with multiple devices and systems (just like embedded projects are likely to interact with multiple attached peripherals and/or remote systems). And they can even interact with other App Developer and Embedded projects.

App Dev1.png

App Developer is comprised of 2 distinct features – PC Developer and Web Developer. Whereas Flowcode Embedded projects are developer to run on the embedded device itself, App Developer projects will run on a PC or within a browser and will typically be used to communicate with remote embedded systems.

There are a lot of similarities in how Embedded and App Developer projects are developed. The main difference is the actual intended target device. Embedded projects are used when the target will be an embedded device such as a chip or a single-board computer. PC Developer projects will create apps that run on Windows PCs and Web Developer projects will create web pages that can be run on any PC or device that supports a browser.

App Dev2.png


Links

Web Developer
Web Developer Getting Started Guide
PC Developer