Saving program to file
nilindza
✭
Hi all.
I'm developing PC application (PC SDK) with Visual Studio 2008 and Robot Studio 5.12.03 virtual controller for creating basic control functions over IRB 140 typeC; 6kg; 0,81m.
Problem description:
Problem occurs with:
Task.SaveProgramToFile(SaveDir) method with following error:
SYS_CTRL_E_NO_PROGRAM_NAME
I know that parameter programName needs to be different from nothing value or "", but i don't understand how to change it, because PC SDK- Task class doesn't have programName type:
Public member 'ProgramName' on type 'Task' not found.
I red in Manual-Robot Application Builder-3HAC028083-001 Revision: D ,
on page 246; section 7 Using PC SDK; 7.5.6. Working with RAPID modules and programs next example of code:
Dim TaskCol As Task() = AController.Rapid.GetTasks()
Dim AnObject As Object
For Each AnObject in TaskCol
ATask = DirectCast(AnObject, Task)
ATask.ProgramName = ATask.Name
ATask.SaveProgramToFile(SaveDir)
ATask.DeleteProgram()
Next
I also red FlexPedant SDK, and noticed that i can change this property, but that's developing FlexPedant application.
I'm new at this, and little confused, so please explain me where I'm making errors and how can i solve above described problem.
Thank you in advanced, with respect Milan Delic
I'm developing PC application (PC SDK) with Visual Studio 2008 and Robot Studio 5.12.03 virtual controller for creating basic control functions over IRB 140 typeC; 6kg; 0,81m.
Problem description:
Problem occurs with:
Task.SaveProgramToFile(SaveDir) method with following error:
SYS_CTRL_E_NO_PROGRAM_NAME
I know that parameter programName needs to be different from nothing value or "", but i don't understand how to change it, because PC SDK- Task class doesn't have programName type:
Public member 'ProgramName' on type 'Task' not found.
I red in Manual-Robot Application Builder-3HAC028083-001 Revision: D ,
on page 246; section 7 Using PC SDK; 7.5.6. Working with RAPID modules and programs next example of code:
Dim TaskCol As Task() = AController.Rapid.GetTasks()
Dim AnObject As Object
For Each AnObject in TaskCol
ATask = DirectCast(AnObject, Task)
ATask.ProgramName = ATask.Name
ATask.SaveProgramToFile(SaveDir)
ATask.DeleteProgram()
Next
I also red FlexPedant SDK, and noticed that i can change this property, but that's developing FlexPedant application.
I'm new at this, and little confused, so please explain me where I'm making errors and how can i solve above described problem.
Thank you in advanced, with respect Milan Delic
0
Comments
-
Hi,the property Task.Name does not exists in PC SDK.The latest PC SDK Application Manual, which is included in RobotStudio, does not mention this property.You must make sure that the program has a name before trying to save it, by user interaction, or by loading a .pgf file which specifies a program name.I understand this was a bit confusing.This property will be added in PC SDK 5.14.Thanks.0
-
Thank you for quick and thorough reply.
With respect, Milan Delic.
0 -
No problem, it was a reply, but not what you hoped for.Is his stopping you from what you are trying to accomplish?0
-
I'm working on a project with experts in CAM concept, factory automation, mechatronics and robotics.
My primary field of interest is IT implementation and support of quality management system processes via software solutions, so this is my first assignment on a project with this type of nature (still confused ).
The main goal of a project is manipulator integration with existing IS.
Term existing means that we have distributed DB structure and all programs for manipulator should exist only in DB tables, until manipulator needs them (This request is explicitly define in software specification).
In a moment of use (when manipulator operator (one worker) receives "work order" type of document), manipulator receives program (or programs) for specific operations, correspondent to operations defined in "work order" (send by manipulator operator to controller via my application). After use, programs should be erased for controller memory.
So, as i understand it (maybe I'm doing something wrong ), my application is integration node between DB structure and manipulator. One of many required application functions is that application can manage programs on controller of manipulator.
If so, task.ProgramName() is parameter that i tryed to manage and support with software application.
I understand what you wrote, and i can say that I'm satisfied with your answer . Because their job (rest of team) is to name properly programs if they want them to be upload in DB and further, on controller manipulator. That's a technical restriction, at the moment and it's fine by me .
With respect, Milan Delic
0 -
Oh, sorry, I forgot to say that this is only pilot-project (of course). if we actuality manage to do something productive, then, this collaboration potentially may become serious project .
With respect, Milan Delic
0 -
Hi Milan,thanks for giving the background and context of your application.Good that you can treat the non existing "task.ProgramName" as fact and technical restriction and not a problem for the time being.I'll record it as an improvement for the next major release (5.14).Good luck!0
Categories
- All Categories
- 5.5K RobotStudio
- 394 UpFeed
- 18 Tutorials
- 13 RobotApps
- 297 PowerPacs
- 405 RobotStudio S4
- 1.8K Developer Tools
- 249 ScreenMaker
- 2.7K Robot Controller
- 309 IRC5
- 59 OmniCore
- 7 RCS (Realistic Controller Simulation)
- 785 RAPID Programming
- AppStudio
- 3 RobotStudio AR Viewer
- 18 Wizard Easy Programming
- 105 Collaborative Robots
- 4 Job listings