PLCnext on Instagram  PLCnext on YouTube Github PLCnext CommunityStore PLCnext Community

 

 How to create a Blog Entry

For the voice recognition we use a device which is developed by a German company called voice INTER connect. Together with another company phytec they created the voice control kit.

It is a combination of a small embedded single board computer of phytec together with the industrial voice control board of voice INTER connect. The voice control supports 30 languages and works completely offline. The spoken commands are sent out via MQTT in json format..

We liked this board so much that we integrated it in our parcel turning device training hardware.

In my last post I wrote about our development setup to write C++ for PLCnext here in IMA Engineering at Phoenix Contact Deutschland GmbH. So you maybe already know that we are using Visual Studio Code to write C++ for PLCnext. In this post I want to show you how you can automate and therefore shorten your deploy and development cycle with Visual Studio Code tasks.

When developing components and programs for PLCnext in C++, it is often required to use functions provided by external, open source libraries. Open source libraries are available for applications including:

  • Machine learning
  • Special communication protocols
  • Database management

PLCnext Technology allows functions in external libraries to be called directly from real-time, deterministic control programs.

This guide describes how to use a third-party open-source library in a C++ project that is built for PLCnext Control using Eclipse.

NOTE: When using third-party software, it is the responsibility of the user to ensure that all license conditions are complied with.

PLCnext Technology controllers come with the SQLite database engine already installed. This database can be used by applications that require a "small, fast, self-contained, high-reliability, full-featured, SQL database engine" on the PLC.

This guide shows how to link a PLCnext Control C++ project to SQLite, and gives a simple example of how to call a SQLite function from a C++ component.

kernel parameters

To try out open source packages like Docker that require kernel parameters which are not enabled in the kernel of the standard firmware, it might be necessary to build and install an altered kernel on a PLCnext Control.

This How-To will guide you through this process. You need to get the kernel sources for the specific device and firmware version.

This package is not provided in the download-section for the device but can be ordered for a handling fee (check the procedure in the User Manual to the device).

(Click "Read more..." below the image.)

This example shows how to create PLCnext Component libraries with Visual Studio Code. The project layout should be capable of handling multiple PLCnext SDK versions and different controller targets.

The example is hosted on GitHub and can be downloaded from the GitHub repository.

This example was made with the following software:

  • Ubuntu 18.04.02 LTS as development environment.
  • Visual Studio Code version 1.32.3
  • Visual Studio Code Extensions:
    • CMake (twxs.cmake) version 0.0.17
    • CMake Tools (vector-of-bool.cmake-tools) version 1.1.3
    • C/C++ (ms-vscode.cpptools) version 0.22.1
  • PLCnext SDK 2019.0 LTS for AXC F 2152
  • PLCnext SDK 2019.3 beta bundle 1 for AXC F 2152

To be able to follow this blog, you must have alreday installe the OPC-UA inside Node-Red.

Then, it will be possible to send a mail, with a command from the PLC (xSend) including a variable message (strText).

Here are the 2 variables of the AXC F 2152 which will be used and accessible by OPC UA :

1

OPC option must be checked.

Page 6 of 9