Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Version

Changes

1.0

Initial version

1.1

Clarification of naming

1.2

List of components and examples

Introduction

uGOAL describes a software package, which allows integration of of the irj45/SoM module into applications without using a full GOAL framework platform. By stripping down the required dependencies from the GOAL industrial communication framework, integration is possible into a wide range of platforms from a simple ATMEGA 8-bit CPU with 2KB of RAM up to a linux PC.

uGOAL mimics the required functionality from the GOAL framework specifically needed by the application controller framework. It is configurable in different ways to ensure compatibility with a wide range of targets. Most GOAL functionality is not available, however the CCM specific examples for fieldbus applications can be reused mostly without adaption.

Components

uGOAL contains a core which includes the basic GOAL framework functionality required for RPC wrappers. Following RPC wrappers are available for uGOAL:

RPC wrapper

functionality

remarks

pnio

Profinet Stack

fully supported

ecat

EtherCAT Stack

fully supported

eip

EtherNet/IP Stack

fully supported

http

Web Server

only recommended for targets with > 32kByte RAM available

net

UDP and TCP channels

only recommended for targets with > 32kByte RAM available

ccm

ccm module management

fully supported

API

The uGOAL based software delivery is API compatible with the GOAL based software delivery. Therefore all existing application and examples can be reused with minimal adaption. Thus the communication module user manual also applies to the uGOAL software delivery: iRJ45/SoM - User Manual .

Examples

Many examples are available:

Code Block
projects
2├── 2015013_irj45
3│   ├── 01_pnio_io_mirror
4│   ├── 02_eip_io_data
5│   ├── 04_pnio_validation
6│   ├── 05_pnio_01_simple_io
7│   ├── 06_eip_io_data_static_ip
8│   ├── 07_pnio_dsn
9│   ├── 08_pnio_01_simple_io_http
10│   ├── 09_ecat_slave
11│   ├── 10_pnio_process_alarm
12│   ├── 11_firmware_update
13│   ├── 12_ecat_validation
14│   ├── 13_firmware_update_callback
15│   ├── 14_ip_management
16│   └── 15_tcp_proxy
17├── goal_http
18│   ├── 01_get
19│   ├── 02_post
20│   ├── 03_list_res
21│   ├── 04_auth
22│   ├── 05_template_cm
23│   ├── 06_template_list
24│   └── 07_template_table
25├── goal_net
26│   ├── 01_udp_receive
27│   ├── 02_tcp_client
28│   └── 03_tcp_server
29└── ugoal
30    ├── 01_ethercat
31    ├── 02_profinet
32    ├── 03_eip
33    ├── 04_profinet_dyn_modules
34    ├── 05_ccm
35    ├── 06_ethercat_minimal
36    ├── 07_http_ip_management
37    ├── 08_pnio_io_mirror
38    └── 09_pnio_io_mirror_new_api

Examples from the 2015013_irj45 folder are derived from GOAL based examples. Additional description can be found here: iRJ45 / SoM - GOAL examples .

Examples under the goal folder are developed with uGOAL in scope, thus they are generally more suitable for smaller targets (up to only 8kByte of RAM). Additional description can be found here: iRJ45 / SoM - uGOAL Examples .

Platform porting

The platform interface required for integration into an platform contains of the following functions:

...