Contents
About
Version
Contributors
Copyright
License
Introduction
The HCC2
Engineering Skill Base for the SDK
External References
HCC2 Architecture
System Architecture Overview
Physical System Architecture
Software Architecture
Key concepts for application development
Modbus SDK
Additional Components
Hardware
Libraries
Modbus Application Overview
Modbus Configuration
HCC2 Modbus TCP Server Configuration
Application Modbus TCP Client Configuration
Alarm Configuration
Alarm Mapping
Application Development
Application Running and Testing
Build and Deploy Overview
Building Containers
Example Dockerfile
Creating Images Locally (Docker Desktop)
Container Preparation
Editing docker-compose.yml
REST SDK
Additional Components
Hardware
Libraries
REST Server Implementation
Overview
Introduction
Development Mode & Swagger UI
Application Configuration Editor (ACE)
Development Overview
Workflow
Simple Startup
Simple Reconfiguration/Deployment
Advanced Startup
Advanced Reconfiguration/Deployment
API
Application Creation
Registration
Application Removal (deregistration)
Application Tarball Handling
Run Time Configuration (Provisioning)
Message
Event Management
Data Logger
REST Application Overview
Data Points Configuration
HCC2 Data Points Configuration
Data Points Configuration using ACE
Application Configuration Editor
Data Point Creation using ACE
Data Points Configuration using Swagger
Swagger
Swagger Data Points Creation Workflow
Alarms Access and Configuration
HCC2 Existing Alarms Listing (example)
Alarms Creation
Sample Application Code
Sample Application API Methods
Application Running and Testing
Overview
Functionality
First Time Running
- Install Python Version 13.1
- Install Dependencies
- Modify Application Configuration File
- Configure Unity Network Settings
- Configure Unity Firewall Settings
- Run and Verify Registration
- Deploy Application
JSON Configuration Settings
app
registration
heartbeat
provisioning
network
rest_api
Tasks
Adding Tasks
Provisioning
Registration
Overview
Managing Data Points
Overview
Subscriptions
Usage
Subscriptions Setup
Docker Setup
Using Environment Variables
Using Docker Volumes
REST Application Overview
Functionality
Expected Data Points
Design
Folder Structure
Core Application Flow
Application Flow Documentation
RunAsync Flow
RunBusinessLogicAsync Flow
Error Handling
Configuration Methods
Further Reading
Configuration Settings
Example Settings for Local Tests
Build and Deploy Overview
Building Containers
Example Dockerfile
Creating Images Locally (Docker Desktop)
Container Preparation
Editing docker-compose.yml
Design Considerations
.NET Version
Docker Image Selection
Programming Techniques
Requirements
Development Machine
Physical Requirements
Software Requirements
VM Deployment Overview
In this section
Hardware Networking Setup
Development SDK VM Creation
Installation Procedure
Software Installation
Linux Development Environment
Windows Development Environment
Installing Development Tools
HCC2 Development Tools and Samples
HCC2 Development Tools and Samples - Modbus
HCC2 Development Tools and Samples - RESTful
Edge SDK Dev Tools Setup
Build and Deploy Overview
Application Signing
Prerequisites
Packaging and Signing
Application Deployment (EPM)
Downloading the EPM Software
Deploying a Signed Application
Should Something Go Wrong
HCC2 Application Signing
Development Mode License
Removal of Development Mode License
HCC2 OEM Signing Keys
User Interfaces
Rules and Best Practices
Rules
Best Practices
- General Application Considerations
- Storage Considerations
- Shared Data
- Setup via Environment Variables and Parameters