langJapanese
RT-C FAQ
Here are FAQ on RT-C Language Controller.
1-1 What is RT-C Language Controller?
RT-C Language Controller is an real time controller prodcut which runs on industrial PCs.
You can achieve instrument control with maximum 100 us control period.
You develop control programs by Visual Studio C#.
1-2 Do you have documents of develpment steps (Programming methods)?
We provide you with "users manual" which describes from creating new programs to running the programs.
.
1-3 Can we use C# programs for Windows?
Though you can use basic program flow, but you can not use libraries for Windows as it is in RT-C Language Controller.
Therefore you have to swith them to lirabires for RT-C Language Controller.
1-4 Can we introduce it to general PCs in our office?
In RT-C Language Controller, we provide you with a controller where software is pre-installed to industrial PC so as to achieve good real time performance.
Please ask us individually if you'd like to use your own PC.
  • List of RT-C Language Controller (Under Construction)
2-1 Does it have a function to start / stop operation of real time program?
The development environment has a function for operating start / stop of progarms.
Moreover, you can operate it by operation panel function (software) which is installded into RT-C Language Controller itself.
2-2 What is the difference of 3 kinds of "Start" such as cold, warm, hot which can be operateed in development environment?
There is no difference between cold start and warm start, it means the same function.
Once you start, in C# program "constructor process" -> "initial process" -> "main process" are executed in this order.
If you start with hot start, "constructor process" and "initial process" are not executed. only "main process" is executed.
2-3 Does it have a monitoring funcions for running programs?
It doesn't have a monitoring function for running programs.
2-4 Does it have a self-diagnosis function (Controller itself detects abnormity)?
It has a functions called SPG (System Program). SPG is a program which is automtically called from OS of the controller when operation status of controller is error or is changed.
You can use the following sytem programs.
SPG Description
Warm Start It is executed in warm start.
Cold Start It is executed in cold start.
Hot Start It is executed in hot start.
Stop It is executed when programs stop.
Watch Dog Error It is executed if task execution is not finished withing watch dog timer.
CPU Overload It is executed when CPU overload occurs.
String Operation Error It is executed when error in string operation occurs, e.g. when you replace string characters, but there are no characters to be replaced.
Arrany Boundary Error It is executed when array or structure are outside the range.
0 Divided Error It is executed if zero-division occurs in running progarms.
Stack Overflow Error It is executed when stack overflow occurs.
Blue Screen Error It is executed when [Blue Screen] occures and it crashes owing to Windows internal problem or "failure driver component".
2-5 Does it have a failure-history function (Save self-diagnosis resulsts as a failure-history to memory)?
It mounts a save-log funcion. It can store errors, changeovers to files.
You can see them from operation tool / operation panel.
2-6 Does it have a watch dog time function?
You can designate it by task settings.
You can do arbitrary processes with detecting watch dog by SYSTEM task.
※ If you'd like to use SYSTEM task, develoemnet tool (option) is needed.
※ Toward SYSTEM task itself, you can not use watch dog time function.
2-7 What are tasks which RT-C Language Controller can use?
In RT-C Language Controller, you can use 4 kinds of tasks accroding to international standard specificaion "IEC61131-3". If you assign created programs to these tasks, you can execute at your requied timing.
The features of above mentioned tasks are as follows.
Task Behavior Control Period
CYCLIC Task Task executed at regular intervals 0.1ms~
EVENT Task Task executed by interrupt signals from external I/O or event notification from external progarms Interrupt Event
DEFAULT Task Task executed repeatedly 2ms~
SYSTEM Task Task executed by event notification from PLC systems
※ If you'd like to use SYSTEM task, develoemnet tool (option) is needed.
Interrupt Event
2-8 Please tell us the behavior of DEFAULT task.
DEFAULT task is a task which runs when other tasks don't run.
DEFAULT task waits according to the process time after finishing 1 scan process. After finising waiting time, DEFAULT task starts from the next system time.
ex): In case of 1 scan time ;1ms, waiting time = 1ms.
2-9 How is the task swithcing time?
The switching performance of tasks (DEFAULT、CYCLIC、EVENT、SYSTEM) in RT-C Language Controller depends on the performance of PC hardware.
We disclose data after doing operation verification and data measurement.
  • Report for Operation Check (Under Construction)
2-10 If we'd like to use EtherCAT®, how many slaves can we connect?
Up to 65535 slaves can be connected.
2-11 How can we check memory quantity consumed of programs?
You can check memory quantity consumed of your programs by the following way.
(1) Starat project control of RT-C tool.
Selecdt [online]-[project control].
RT-C tool
(2) Download progarmas to RT-C Language Controller.
Click [information] of Resource dialog.
Resource dialog
(3) Info Dialog is displayed.
The Memory item is memory quantity consumed which has been downloaded to RT-C Language Controller.
※Error occurs when memory quantity consumed of programs is beyond maximum value.
Info Dialog
3-1 I've heard about Multi Tasks (Maximum 16 tasks), can we set priority to each task?
You can assign priority by task settings.
Maximum priority is [0]. And Minimum priority is [31]. The Maximum priority is called firstly.
※ You can not set priority to SYSTEM task and DEFAULT task
Task Priority
3-2 Can we change control period per tasks?
Yes, you can set it per tasks. The useful range of setting values are 0.1 ~ 32767 ms.
※ You can set it only to CYCLIC task.
Task Priority
3-3 How should we do if we'd like to create process detecting start / stop operation?
You can do arbitray processes detecting start / stop by using SYSTEM task.
※ If you'd like to use SYSTEM task, develoemnet tool (option) is needed.
3-4 How is the behavior when BSOD is detected?
There are 2 behavior patterns when BSOD occurs.
Pattern 1:Do process for BSOD after BSOD is detected by Event.
Pattern 2:Keep on doing process without issuing any Events even if BSOD occurs.

Pattern 1:Do process for BSOD after BSOD is detected by Event.
If BSOD occurs, the process stops.
If you'd like to keep on doing the process, firstly you detect the error in SYSTEM task, then you use function [CONTINUE]※1 in it in order to keep on doing the process.
※1 it is in firmware library [ProConOS] which is provided as standard.

Do the following settings.

1.Program→INtime®→INtime® Configuration, start setting tool.
2.Select Node Management as component.
INtime Configuration

3.In "Windows bug check interception", select "Trap Windows Bug Check Exceptions",
   then click "save" to save the settings.
Windows bug check exeption (BSOD) trap

4.Do the process for BSOD in SYSTEM task of SPG24 in MULTIPROG project.


Pattern 2:Keep on doing process without issuing any Events even if BSOD occurs.
Issuing event is not done even if BSOD occurs.
【Notice】
 Please pay attention that file I/O can not be used until PC reboot when BSOD occurs.

Do the following settings.

1.Program→INtime®→INtime® Configuration, start setting tool.
2.Select Node Management as component.
INtime Configuration

3.In "Windows bug check interception", select "Do NotTrap Windows Bug Check Exceptions",
   then click "save" to save the settings.
Windows bug check exeption (BSOD) trap

4-1 Which versions of Visual Studio does it correspond to?
Visual Studio 2008 / 2010 / 2013 / 2015. And Edition is more than Professional.
4-2 Does it correspond to the step execution function for Visual Studio debugging?
It has corresnponded to the step execution function for Visual Studio debugging only in "Visual Studio 2010".
4-3 Does it have project limitations for program development environment?
The following chart describes valid limitation in 1 project.
※ Limitation Value of expanded development tool in ().
Item Limitation
Node of Project Tree 8000 (8000)
Configuration of Project Tree 1 (100)
Resource of Project Tree 1 (100)
Program Instance of 1 resource 15 (1000)
Task of 1 resource 5 (16)
Program Instance of 1 task 15 (500)
※ There are some cases that actual limitation values are more than above described.
4-4 Does it have debugging methods with running programs in only development environment?
No, it doesn't have.
Please connect to controller when you exectute your programs.
5-1 About errors when you build in Visual Studio
They are the errors in Visual Stuido when you edit your code.
According to error information in Visual Studio, please recheck your programs.
5-2 About errors when you make (build) in RT-C tool
No Error Message Cause Example
1 Internal Error In case that you delete constructor process parts in C# etc.
2 Error occurs when native codes are being created. In case that more than 1024 local variables are used in C#.
In case that more than 30720 global variables are used in C#.
In case that more than about 1700 user functions are used in C#.
In case that you try to initiate in array declaration in C#.
・・・
2 Cmpiled projet programs need more memories than available memory of connected device.
Available memory: 1500000 bytes / Required memory: OOOOOO bytes
It occurs when created programs are beyond available memory sise.
【reference】a = a + 1: use 4 bytes

5-3 About errors in operation
No Error Message Error Message
1 Internal Error In case that you delete constructor process parts in C# etc.
2 Error occurs when native codes are being created. In case that more than 1024 local variables are used in C#.
In case that more than 30720 global variables are used in C#.
In case that more than about 1700 user functions are used in C#.
In case that you try to initiate in array declaration in C#.
・・・