1. Home
    1. Dashboard
    2. Search
  2. Forum
    1. Unresolved Threads
    2. Members
      1. Recent Activities
      2. Users Online
      3. Team Members
      4. Search Members
      5. Trophys
  3. Articles
  4. Blog
  5. Videos
  6. Jobs
  7. Shop
    1. Orders
  • Login or register
  • Search
This Thread
  • Everywhere
  • This Thread
  • This Forum
  • Articles
  • Pages
  • Forum
  • Blog Articles
  • Products
  • More Options
  1. Robotforum - Support and discussion community for industrial robots and cobots
  2. Forum
  3. Industrial Robot Support and Discussion Center
  4. Stäubli & Bosch Robot Forum
Your browser does not support videos RoboDK Software for simulation and programming
Visit our Mainsponsor
IRBCAM
Robotics Channel
Robotics Training
Advertise in robotics
Sponsored Ads

Staubli CS8: FTP Directory for VAL3 Programs

  • painful_staubli
  • June 21, 2023 at 7:33 PM
  • Thread is Unresolved
  • painful_staubli
    Reactions Received
    3
    Trophies
    1
    Posts
    44
    • June 21, 2023 at 7:33 PM
    • #1

    Hello - I have two questions:

    Can anyone who is working with FTPs tell where to send the VAL3 Programs to Staubli CS8 FTP Directory? I can see usr/usrapp but cannot see it on the MCP!

    Also, is .PGX is the correct format for the VAL3 Programs?


    Thanks so much! :smiling_face:

  • Galet
    Reactions Received
    19
    Trophies
    2
    Posts
    141
    • June 22, 2023 at 11:07 AM
    • #2

    Hello,

    Normally ,all applications are in /usr/usrapp (direct or un subdirectories).

    Only the applications in /usr/usrapp are visible for user (MCP).

    If you have applications in subdirectory, the "master" application can use it (Library).

    Val3 Applications are composed with .pjx (project), .pgx (program) and .dtx (data) files. All are Xml format files.

    With Val3, you can read or write other text files (like CSV) for data exchange for example.

    Have a nice day..

  • painful_staubli
    Reactions Received
    3
    Trophies
    1
    Posts
    44
    • June 23, 2023 at 5:43 PM
    • #3

    Hello,

    I cannot see the .pgx file that I upload to the usrapp folder in the CS8 via FileZilla FTP. I am logged in as an admin and tried maintenance user on MCP and no success. What am I missing? where should I navigate to see the .pgx program I uploaded on the MCP? Thanks

    Images

    • IMG_2815.jpg
      • 160.59 kB
      • 675 × 1,200
      • 7
    • IMG_2817.jpg
      • 152.14 kB
      • 675 × 1,200
      • 6

    Edited once, last by painful_staubli (June 23, 2023 at 6:02 PM).

  • painful_staubli
    Reactions Received
    3
    Trophies
    1
    Posts
    44
    • June 23, 2023 at 6:02 PM
    • #4

    Does the file need to be in a folder or a package with others like the ones in the screenshots attached?

    Images

    • IMG_2819.jpg
      • 166.07 kB
      • 675 × 1,200
      • 8
    • IMG_2816.jpg
      • 159.04 kB
      • 675 × 1,200
      • 6
  • Galet
    Reactions Received
    19
    Trophies
    2
    Posts
    141
    • June 24, 2023 at 11:27 AM
    • #5

    Hello,

    2 possibilities :

    - The file is not transfert to the controler (Do you see it with Filezilla ?)

    - You don't send the file IN an application : This program need to be declared in the pjx file.

    Have a nice Week-end !

  • ElEsgalho
    Reactions Received
    17
    Trophies
    3
    Posts
    119
    • June 27, 2023 at 3:39 PM
    • #6

    As Galet said, there is an entire structure around an application.

    The file alone won't be recognised as a valid application to run as a standalone file.

    An application is a folder that contains .PGX files, the programs, and the start and stop program must exist.

    It also contains a .DTX file, which contains the application data.

    A .PJX file pointing to all relevant programs and libraries of the application. Even if you send a new .PGX file to the application folder, it won't be recognised unless stated on the .PJX file.

    The .DTX and the .PJX names are the same as the application folder.

    BTW all the above files are XML files that you can easily open with Notepad++. I even shared in the past my user-defined language color scheme to read the XML as it was open on SRS.

  • Galet
    Reactions Received
    19
    Trophies
    2
    Posts
    141
    • June 27, 2023 at 5:44 PM
    • #7

    @Painfull,

    If you want an exemple, create an application on the SP1, create a program and some global variable and load it on your Apple.

    If you want to change (or copy) an application, be carreful that the name of the directory need to be the same as the application (pjx) and data (dtx) file.

    The most difficult is to create new variable (Global in the data file, or Local in directky in the pgx file).

    Without Start() and Stop(), the application can be loaded but not started.

    ...

  • painful_staubli
    Reactions Received
    3
    Trophies
    1
    Posts
    44
    • June 29, 2023 at 7:43 PM
    • #8

    Thanks Galet and ElEsgalho! I was able to put together an application without the use of the SRS software. However, I was forced to remove the toolhead parameters from the Val3 program because I was getting the following errors on the MCP:

    23:32 (File Test.dtx-line 6) ToolHead? : invalid name

    00:00 (File Test_000 pgx-Line 2) setPayload’ : undefined function

    It says invalid name because the value of the setPayload is not assigned. The four parameters for the setPayload are: tool name, tool weight, tool cog, inertia.

    Tt appears that using the setPayload function on the DefaultTool toolhead needed to be removed since the toolhead from the program, the setPayload function will no longer be available. So I removed the setPayload function call manually for now, but I would like to reintroduce the toolhead in my programs hence why I am using a robot arm to serve an application. once again the .dtx file is running ok without tool head payload and its four parameters. I appreciate any help. Thanks!

  • Galet
    Reactions Received
    19
    Trophies
    2
    Posts
    141
    • July 2, 2023 at 10:32 AM
    • #9

    Hello,

    What is the SRC from your controler ?

    1 -Tool need to be defined like that in the Datas field from .dtx file :

    Quote

    <Data name="tToolHead" access="private" xsi:type="array" type="tool" size="1">

    <Value key="0" x="1" y="2" z="3" rx="4" ry="5" rz="6" fatherId="flange[0]" ioLink="valve1" ioOpen="11" ioClose="12" />

    </Data>

    2- to Set Payload :

    Create a Program like that (with your datas)

    Code
    begin
      l_nMass = 1.0000
      l_trGrCenter = {75.0000 , 75.0000 , 75.0000, 0, 0, 0}
      l_nMatrix[0,0]=0.0038
      l_nMatrix[0,1]=0.0000
      l_nMatrix[0,2]=0.0000
      l_nMatrix[1,0]=0.0000
      l_nMatrix[1,1]=0.0038
      l_nMatrix[1,2]=0.0000
      l_nMatrix[2,0]=0.0000
      l_nMatrix[2,1]=0.0000
      l_nMatrix[2,2]=0.0038
    
      setPayload(flange, l_nMass, l_trGrCenter, l_nMatrix)
    end
    Display More

    And call it when you need it :

    Code
    call YourPayload()

    That's it !

  • painful_staubli
    Reactions Received
    3
    Trophies
    1
    Posts
    44
    • July 8, 2023 at 5:04 AM
    • #10

    Galet, Thanks for your kind and informative reply. I am copying all application files to the controller. The variables used by setPayload are expected to be read from the generated .dtx file but in my case it does not read it. Are you suggesting that the format should be like you mentioned?

    Below are my settings in the .dtx file.

    <Data name="Inertia" access="private" xsi:type="array" type="num" size="1">

    <Value key="0" value="0"/>

    </Data>

    <Data name=“Hand” access="private" xsi:type="array" type="tool" size="1">

    <Value key="0" x="-0.001" y="-0.005" z="122.227" rx="0" ry="0" rz="0" fatherId="flange[0]"/>

    </Data>

    <Data name="Hand_C" access="private" xsi:type="array" type="trsf" size="1">

    <Value key="0" x="-0.001" y="-0.005" z="122.227"/>

    </Data>

    <Data name="Hand_W" access="private" xsi:type="array" type="num" size="1">

    <Value key="0" value="0.2"/>


    The .pgx file starts like the following but apparently not reading the .dtx data written above:

    <?xml version="1.0" encoding="utf-8" ?>

    <Programs xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://www.staubli.com/robotics/VAL3/Program/2">

    <Program name="GH_000">

    <Locals>

    </Locals>

    <Code><![CDATA[begin

    setPayload(Hand, Hand_W, Hand_C, Inertia)


    Any advise would be highly appreciated. Thanks again!

  • Galet
    Reactions Received
    19
    Trophies
    2
    Posts
    141
    • July 8, 2023 at 5:48 PM
    • #11

    Hello,

    Inertia need to be an array 3,3 of num as defined in my example (create with SRS) :

    <Data name="nInertia" access="private" xsi:type="array" type="num" size="3 3" />

    Quote

    ...but in my case it does not read it...

    What is the issue or the message ? How do you know tha the controller don't read it ?

    If you write nError=setPayload... what's the result ?

    Have a nice day...

  • painful_staubli
    Reactions Received
    3
    Trophies
    1
    Posts
    44
    • July 20, 2023 at 7:09 PM
    • #12

    Galet the error message o the MCP is the following:

    (File Test_000.pgx-Line 2) ‘setPayload' undefined function

    Below are the status of my application architecture:

    the 'setPayload' function is correctly defined and spelled in the '.dtx' file.

    the '.dtx' file is properly included and linked within the application and is accessible to the '.pgx' file.

    the folder structure and file locations are correct and that the MC

    the MCP can access the coordination points from .dtx folder but unable to read the following function from it:


    <?xml version="1.0" encoding="utf-8" ?>

    <Database xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://www.staubli.com/robotics/VAL3/Data/2">

    <Datas>

    <Data name="Inertia" access="private" xsi:type="array" type="num" size="1">

    <Value key="0" value="0"/>

    </Data>

    <Data name="Toolhead” access="private" xsi:type="array" type="tool" size="1">

    <Value key="0" x="-0.001" y="-0.005" z="122.227" rx="0" ry="0" rz="0" fatherId="flange[0]"/>

    </Data>

    <Data name="Toolhead_C" access="private" xsi:type="array" type="trsf" size="1">

    <Value key="0" x="-0.001" y="-0.005" z="122.227"/>

    </Data>

    <Data name="Toolhead_W" access="private" xsi:type="array" type="num" size="1">

    <Value key="0" value="0.2"/>


    This is the section of the .pgx file where the error is coming from:

    <?xml version="1.0" encoding="utf-8" ?> <Programs xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://www.staubli.com/robotics/VAL3/Program/2"> <Program name="Cone_000"> <Locals> </Locals> <Code><![CDATA[begin setPayload(Toolhead, Toolhead_W, Toolhead_C, Inertia)


    I am running out of time and need to figure this out. Please kindly advise. Thanks very much for your time spent.

  • painful_staubli
    Reactions Received
    3
    Trophies
    1
    Posts
    44
    • July 20, 2023 at 8:34 PM
    • #13

    By the way, below the function in .dtx file, I have the following array but am not sure why the .pgx file not reading it. I hope the naming conventions are correct:

    <Data name="DefaultFrame" access="private" xsi:type="array" type="frame" size="1">

    <Value key="0" x="0" y="0" z="-375" rx="0" ry="0" rz="0" fatherId="world[0]"/>

    </Data>

    <Data name="dos" access="private" xsi:type="array" type="dio" size="3">

    <Value key="0" link="BasicIO-1\%Q0"/>

    <Value key="1" link="BasicIO-1\%Q1"/>

    <Value key="2" link="BasicIO-1\%Q2"/>

    </Data>

    <Data name="dis" access="private" xsi:type="array" type="dio" size="3">

    <Value key="0" link="BasicIO-1\%I0"/>

    <Value key="1" link="BasicIO-1\%I1"/>

    <Value key="2" link="BasicIO-1\%I2"/>

    </Data>

  • Galet
    Reactions Received
    19
    Trophies
    2
    Posts
    141
    • July 21, 2023 at 12:27 PM
    • #14

    Hello,

    Sorry, but you have many problem because you try to program without the good tools or methodology....and you need to learn the VAL3 in the same time.

    You add syntax wrong lines to other problem So you lose many time...

    I note that you don't want to use SRS. You know that you can make all the programmation on the controler (it's not easy but to begin without syntax error, t's the good way).

    So I propose to program directly on the robot to be sure you have good syntax.

    Directly on the SP1 :

    Create a new application

    Create the different variables (Point, Joint, Tool...)

    Add in the Start() the line with the command Payload.

    Save the application

    Load your application on you Apple

    Edit it and modify the value

    Send it to the controller and try to execute it

    ...

    My question is :

    On the SP1, can you add the line setFrame(....) in your start () or not ?

  • painful_staubli
    Reactions Received
    3
    Trophies
    1
    Posts
    44
    • July 23, 2023 at 8:28 PM
    • #15

    I created a very basic program for you to see. Link here:

    Test
    Shared with Dropbox
    www.dropbox.com

    I do not see any error in the program yet the CS8 detects the following error:

    00:00 (File Test_000 pgx-Line 2) setPayload’ : undefined function

    unless I delete the payload parameters which is the following line in the Test_000.pgx file, the error persists:

    setPayload(DefaultTool, DefaultTool_W, DefaultTool_C, Inertia)

  • Galet
    Reactions Received
    19
    Trophies
    2
    Posts
    141
    • July 24, 2023 at 8:51 PM
    • #16

    I try your application with the line on emulator with SRC (Robot Software) 7.11 and it's running without issue.

    Can you give me the SRC of your controller (Menu/Control Panel / Controler configuration / Versions / System : sxx.xxx) ?

  • painful_staubli
    Reactions Received
    3
    Trophies
    1
    Posts
    44
    • July 24, 2023 at 10:23 PM
    • #17

    Galet Thanks for your quick reply. Below is my CS8 reading from the MCP:

    VAL3: s7.0

    Configuration Version: c1.002

    Option testMode: enabled

    Please let me know if you could kindly dropbox the firmware. Thanks again.

  • painful_staubli
    Reactions Received
    3
    Trophies
    1
    Posts
    44
    • July 26, 2023 at 2:08 AM
    • #18

    Galet I lost access to CS8 while I was transferring files to the /sys folder on CS8. I cannot ping it anymore and when the power is switched on, the MCP is stuck at the Staubli logo page, and keeps flashing. it doesn't go into the menus whatsoever. I would like to create a "bootable usbkey" using an .ISO image file of the system to reinstall everything. Do you have access to a copy of the files you could dropbox please?

  • Galet
    Reactions Received
    19
    Trophies
    2
    Posts
    141
    • July 26, 2023 at 7:35 AM
    • #19

    Hello,

    Quote


    VAL3: s7.0

    Ok, i try this version when I found some times.

    Quote


    I lost access to CS8 while I was transferring files to the /sys folder on CS8

    I think that you send files like Arm or controller. the tcp connection files and perhaps the Profile files.

    It's the risk to use Ftp server like Filezilla ! I warned you about the risks. It's the reasonwhy TransfertManager (SRS) is the best method !

    The solution is to call Staubli services : They have special tools and passwords for maintenance.

  • painful_staubli
    Reactions Received
    3
    Trophies
    1
    Posts
    44
    • July 26, 2023 at 3:38 PM
    • #20

    Galet, can you please provide a backup of the cs8 for me to create a bootable usbkey please? I really need your help.

Advertising from our partners

IRBCAM
Robotics Channel
Robotics Training
Advertise in robotics
Advertise in Robotics
Advertise in Robotics

Job Postings

  • Anyware Robotics is hiring!

    yzhou377 February 23, 2025 at 4:54 AM
  • How to see your Job Posting (search or recruit) here in Robot-Forum.com

    Werner Hampel November 18, 2021 at 3:44 PM
Your browser does not support videos RoboDK Software for simulation and programming

Tag Cloud

  • abb
  • Backup
  • calibration
  • Communication
  • CRX
  • DCS
  • dx100
  • dx200
  • error
  • Ethernet
  • Ethernet IP
  • external axis
  • Fanuc
  • help
  • hmi
  • I/O
  • irc5
  • IRVIsion
  • karel
  • kawasaki
  • KRC2
  • KRC4
  • KRC 4
  • KRL
  • KUKA
  • motoman
  • Offset
  • PLC
  • PROFINET
  • Program
  • Programming
  • RAPID
  • robodk
  • roboguide
  • robot
  • robotstudio
  • RSI
  • safety
  • Siemens
  • simulation
  • SPEED
  • staubli
  • tcp
  • TCP/IP
  • teach pendant
  • vision
  • Welding
  • workvisual
  • yaskawa
  • YRC1000

Thread Tag Cloud

  • abb
  • Backup
  • calibration
  • Communication
  • CRX
  • DCS
  • dx100
  • dx200
  • error
  • Ethernet
  • Ethernet IP
  • external axis
  • Fanuc
  • help
  • hmi
  • I/O
  • irc5
  • IRVIsion
  • karel
  • kawasaki
  • KRC2
  • KRC4
  • KRC 4
  • KRL
  • KUKA
  • motoman
  • Offset
  • PLC
  • PROFINET
  • Program
  • Programming
  • RAPID
  • robodk
  • roboguide
  • robot
  • robotstudio
  • RSI
  • safety
  • Siemens
  • simulation
  • SPEED
  • staubli
  • tcp
  • TCP/IP
  • teach pendant
  • vision
  • Welding
  • workvisual
  • yaskawa
  • YRC1000

Tags

  • staubli
  • FTP
  • program install
  • VAL3
  • CS8C
  1. Privacy Policy
  2. Legal Notice
Powered by WoltLab Suite™
As a registered Member:
* You will see no Google advertising
* You can translate posts into your local language
* You can ask questions or help the community with your knowledge
* You can thank the authors for their help
* You can receive notifications of replies or new topics on request
* We do not sell your data - we promise

JOIN OUR GREAT ROBOTICS COMMUNITY.
Don’t have an account yet? Register yourself now and be a part of our community!
Register Yourself Lost Password
Robotforum - Support and discussion community for industrial robots and cobots in the WSC-Connect App on Google Play
Robotforum - Support and discussion community for industrial robots and cobots in the WSC-Connect App on the App Store
Download