0% found this document useful (0 votes)
1K views85 pages

For Visual Studio User'S Manual: Motoplus SDK

Uploaded by

Mihail Avramov
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
1K views85 pages

For Visual Studio User'S Manual: Motoplus SDK

Uploaded by

Mihail Avramov
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 85

MOTOPLUS SDK

FOR VISUAL STUDIO


USER’S MANUAL
FOR: DX100, DX200, FS1000, YRC1000, AND YRC1000micro

Upon receipt of the product and prior to initial operation, read these instructions thoroughly, and
retain for future reference.

YASKAWA INSTRUCTIONS
MANIPULATOR INSTRUCTIONS
CONTROLLER INSTRUCTIONS
CONTROLLER OPERATOR’S MANUAL
CONTROLLER MAINTENANCE MANUAL

Part Number: 169286-1CD


Revision: 7

1 of 85
169286-1CD

MotoPlus SDK for Visual


Studio

Copyright © 2019, 2018, 2017, 2016, 2015, 2014 YASKAWA America, Inc.

Terms of Use and Copyright Notice


All rights reserved. This manual is freely available as a service to
customers to assist in the operation of YASKAWA robots, related
equipment and software This manual is copyrighted property of
YASKAWA and may not be sold or redistributed in any way. You are
welcome to copy this document to your computer or mobile device for
easy access but you may not copy the PDF files to another website, blog,
cloud storage site or any other means of storing or distributing online
content.

Printed in the United States of America

First Printing, 2014

YASKAWA America, Inc.


Motoman Robotics Division
100 Automation Way
Miamisburg, OH 45342
Phone: 937-847-6200
www.motoman.com

ii 169286-1CD 2 of 85
169286-1CD
MotoPlus SDK for Visual Safety
Studio

Safety

For Your Safety


Robots generally have requirements which are different from other
manufacturing equipment, such as larger working areas, high-speed
operation, rapid arm movements, etc., which can pose safety hazards.
Read and understand the instruction manuals and related documents, and
observe all precautions in order to avoid the risk of injury to personnel and
damage to equipment.
Carelessness contributes to serious accidents in the work area.
It is the user’s responsibility to ensure that all local, state, and national
codes, regulations, rules, or laws relating to safety and safe operating
conditions are met and followed.

DANGER
• Teaching, operations, and maintenance of the Robot must conform
to:
– Industrial Safety and Health Law
– Order for Enforcement of the Industrial Safety and Health Law
– Industrial Safety and Health Regulations
– Technical Standards for Electrical Facilities
Other related laws and regulations are:
– Occupational Safety and Health Act in USA
– Factory Act (Gewerbeordnung) in Germany
– Health and Safety at Work, etc. Act in UK
– EC Machinery Directive 2006/42/EC

• Prepare:
– SAFETY WORK REGULATIONS
based on concrete policies for safety management complying
with related laws and regulations.

• Observe:
– JIS B 8433-1: 2015 “Robots for industrial environments-Safety
requirements” (ISO 10218-1: 2011) for safe operation of the
robot. (JIS B 8433 is for Japan only)

• Reinforce:
– SAFETY MANAGEMENT SYSTEM
by designating authorized operators and safety managers for the
Robot, as well as giving continuing safety education and training.

• Teaching, operation, and maintenance of the Robot are specified as


“Hazardous Operations” in the Industrial Safety and Health Act (for
Japan only).
Personnel engaged in these operations must receive special
training offered by YASKAWA.

iii 169286-1CD 3 of 85
169286-1CD

MotoPlus SDK for Visual Safety


Studio

DANGER
• Personnel engaged in operation, maintenance, or management of
the Robot must receive required training before using the Robot.
For more information on training, contact Customer Support.
• Make sure to have and follow all manuals, read them thoroughly
and understand the contents of them.
Confirm that you have all required manuals. If any of the manuals are
missing, contact Customer Support.

• Read and understand these instructions throughly before installing,


operating, or maintaining the Robot.
Any matter not described in this manual must be regarded as
“prohibited” or “improper”.

We suggest that you obtain and review a copy of the ANSI/RIA National
Safety Standard for Industrial Robots and Robot Systems (ANSI/RIA
R15.06-2012). You can obtain this document from the Robotic Industries
Association (RIA) at the following address:
Robotic Industries Association
900 Victors Way
P.O. Box 3724
Ann Arbor, Michigan 48106
TEL: (734) 994-6088
FAX: (734) 994-3338
www.roboticsonline.com
Ultimately, well-trained personnel are the best safeguard against
accidents and damage that can result from improper operation of the
equipment. The customer is responsible for providing adequately trained
personnel to operate, program, and maintain the equipment.
We recommend approved YASKAWA training courses for all personnel
involved with the operation, programming, or repair of the equipment.
This equipment has been tested and found to comply with the limits for a
Class A digital device, pursuant to part 15 of the FCC rules. These limits
are designed to provide reasonable protection against harmful
interference when the equipment is operated in a commercial
environment. This equipment generates, uses, and can radiate radio
frequency energy and, if not installed and used in accordance with the
instruction manual, may cause harmful interference to radio
communications.

iv 169286-1CD 4 of 85
169286-1CD
MotoPlus SDK for Visual Safety
Studio

WARNING
• Safe operation of this equipment is the users responsibility.
– The conditions under which the equipment will be operated
safely should be reviewed by the user. The user must be aware of
the various national codes, ANSI/RIA R15.06-2012 safety
standards, and other local codes that may pertain to the
installation and use of this equipment.
Not following all national codes, safety standards and local codes can
result in death or serious injury

• Additional safety measures for personnel and equipment may be


required depending on system installation, operation, and/or
location.
– The following safety equipment is provided as standard:
• Safety barriers
• Door interlocks
• EMERGENCY STOP button
Not providing additional safety measures as required can result in
death or serious injury.

• Check all safety equipment frequently for proper operation.


– Repair or replace any non-functioning safety equipment
immediately.
If safety equipment does not operate properly death or serious injury
can result.

CAUTION
• Only trained personnel familiar with the operation, manuals,
electrical design, and interconnections of this equipment should
program, or maintain the system.
Any personnel involved with the operation of the equipment must
understand potential dangers of operation.

NOTICE
• The drawings and photos in this manual are examples. Differences
may exist between them and the delivered product.
• YASKAWA may modify this model without notice due to product
improvements, modifications, or changes in specifications. If such
modification is made, the manual number will also be revised.
• Some operations require standard passwords and while others
require special passwords.
• If a manual is damaged or lost, contact Customer Support to order a
new copy. Make sure to tell Customer Support the Part Number
listed on the front cover.

v 169286-1CD 5 of 85
169286-1CD

MotoPlus SDK for Visual Safety


Studio

Notes for Safe Operation


Read this manual carefully before installing, operating, maintaining, or
inspecting the system.
In this instruction, Safe Operations are classified as “DANGER”,
“WARNING”, “CAUTION” or “NOTICE”.

Indicates an imminently hazardous


DANGER situation which, if not avoided, WILL
result in death or serious injury.

Indicates a potentially hazardous


WARNING situation which, if not avoided, MAY
result in death or serious injury.

Indicates a hazardous situation,


CAUTION which if not avoided, MAY result in
minor to moderate injury.

Indicate a situation which if not


CAUTION avoided may result in equipment
damage.

Indicates practices not related to


NOTICE personal injury.

NOTICE
To ensure safe and efficient operation at all times, be sure to follow all
instructions, even if not designated as “DANGER”, “WARNING” or
“CAUTION”.

vi 169286-1CD 6 of 85
169286-1CD
MotoPlus SDK for Visual Safety
Studio

Installation and Wiring Safety


Review the Manipulator and Controller Instructions for details on
installation and wiring.
In planning installation, adapt an easy to observe arrangement to ensure
safety. Take safety into consideration when planning the installation.
Observe the following when installing the Robot:

DANGER
• Maintenance and inspection must be performed by specified
personnel.
Failure to observe this caution may result in electric shock or injury.

• For disassembly or repair, contact Customer Support.


• Do not remove the motor, and do not release the brake.
Failure to observe these safety precautions may result in death or
serious injury from unexpected motion of the Robot's arm.
• Any person who programs, teaches, operates, maintains or repairs
the included system MUST be trained and demonstrates
competence to safely perform assigned tasks.
Failure to observe these safety precautions may result in death or
serious injury from unexpected movements.

WARNING
• Run the piping, wiring, and cables for the Controller, Robot,
Positioner control panel, peripheral devices, etc. in a pit so that are
not stepped on by personnel or run over by a forklift.

SAFETY
FIRST

Piping Lead
Cable Channnel

Failure to observe this Warning may cause personnel to trip over


exposed piping, wiring, or a cables, which may result in personal injury.
Additionally it may also cause damage to piping, wiring, or cables, and
unexpected movement of the Robot, which may result in personal injury
and/or equipment damage.

vii 169286-1CD 7 of 85
169286-1CD

MotoPlus SDK for Visual Safety


Studio

CAUTION
• Make sure all covers and shields are installed correctly before
operating.
– Some drawings in this manual may have protective covers or
shields removed to show details.
Not having all covers and shields installed correctly can result in injury.

• When installing the Robot system, avoid interference with buildings,


structures, utilities, other machines.
Not avoiding these items may create trapping or pinch points.

• Do not make unauthorized modifications.


Unauthorized modifications can result in injury or equipment damage
and will void the warranty.

• Inspect:
– For problems with movement
– Damages to external wires

Repair any problems immediately and perform all necessary


procedures. If problems are not repaired or procedures are not fixed
unexpected results can occur causing injury.

NOTICE
• If supplying a supplementary audible means for Robot operation, it
shall exceed the ambient noise at the end-use of the application.
• Any changes or additions to the applicable information as provided
by the manufacturer is to be provided by the party that makes the
change or addition to the Robot system

viii 169286-1CD 8 of 85
169286-1CD
MotoPlus SDK for Visual Safety
Studio

Ensure Safety

DANGER
• When the power supplies of the Robot are turned ON at start-up, be
sure to confirm the following:
– Safety protection devices such as the E-STOP circuit, door
interlocks, etc. operate normally.
– Each axis operates normally in TEACH mode.
– Robot operates normally at the speed limit or less in the TEACH
mode.(Speed limit: 250 mm/s at the TCP or the flange)
– The teaching function and the playback function operate normally.

• The Robot may stop movements while waiting for a condition to be


satisfied during operation.
Once meeting the condition, the Robot starts movement causing a
danger that will cause death or severe injury.

• Make sure to clearly indicate when the Robot is in operation:


– Use a pilot lamp and/or an audible alert or
– The Robot stops operation if the operator comes close.

• Install a safety fence around the Robot to prevent any accidental


contact with the Robot when power is applied.
– Display a warning sign stating “Off-Limits During Operation” at the
entrance of the safety fence.
– The gate of the safety fence must be equipped with a safety
interlock to turn the servo power OFF when the gate opens.
– Make sure interlocks operate properly before use.
• For areas not enclosed by safety fences, use a photoelectric
sensor, a safety light curtain, etc. to make sure that the Robot stops
its operation if the operator enters its operating range.
Failure to observe this DANGER will result in death or serious injury
due to contact with the Robot.

ix 169286-1CD 9 of 85
169286-1CD

MotoPlus SDK for Visual Safety


Studio

All personnel working with the Robot (safety administration, installation,


operation, and maintenance personnel) must always be prepared and
“Safety First” minded, to ensure the safety of all personnel.

WARNING
• In the vicinity of the area where the Robot is installed, avoid any
dangerous actions, such as entering the Robot's operating range
without due care.
Failure to observe this instruction may cause contact with the Robot or
peripheral equipment, which may result in death or serious injury.

• Strictly observe the safety precautions and signs in the factory, such
as “Flammable”, “High Voltage”, “Danger”, “Off-limits to
Unauthorized Personnel”.
Failure to observe this instruction may result in death or serious injury
do to fire, electric shock, caused by contact with the Robot or other
equipment.

• Strictly observe the following precautions about clothing:


– Always wear approved work clothes (no loose-fitting clothes).
– To prevent mis-operation, do not wear gloves when operating the
Robot.
– Do not allow underwear, shirts, or neckties hang out from the
work clothes.
– Do not wear accessories, such as earrings, rings, or necklaces.
– Always wear protective safety equipment, such as hard hats,
safety shoes (with slip-proof soles), face shields, safety glasses,
and gloves as necessary.
Failure to observe this instruction may result in death or serious injury.

• The following must be understood and strictly observed by all


personnel as rules:
– Unauthorized personnel other than the operator must not
approach the area where the Robot is installed.
Failure to observe this instruction may cause contact with the Robot,
Controller, control panel, workpiece, or Positioner, etc., may result in
death or serious injury.

x 169286-1CD 10 of 85
169286-1CD
MotoPlus SDK for Visual Safety
Studio

DX100, DX200, and YRC1000 Controllers

WARNING
• Turn OFF servo power before operating.
– Press the EMERGENCY STOP button to turn off SERVO
POWER. When servo power is OFF, the SERVO ON LED on the
Programming Pendant is OFF.
If the EMERGENCY STOP button(s) do not work correctly, death or
serious injury may result. Do not use if the EMERGENCY STOP button
does not perform correctly.
Fig. : EMERGENCY STOP Button

• Clear the cell of all items which could interfere with the operation
before releasing the EMERGENCY STOP button.
Death or serious injury may result from unintentional or unexpected
motion.
Fig. : Release of EMERGENCY STOP Button
TURN

• Make sure no person is in the operating range and the operator is in


a safe location before:
– Turning ON power to the Controller
– Moving the Robot with the Programming Pendant
– Running the system in the TEACH mode
– Performing automatic operations
Death or serious injury may result if a person enters the operating
range during operation. Immediately press an EMERGENCY STOP
button whenever there is a problem.

xi 169286-1CD 11 of 85
169286-1CD

MotoPlus SDK for Visual Safety


Studio

FS100 and YRC1000micro Controller

WARNING
• Before operating the manipulator, check that servo power is turned
OFF when the emergency stop button on the programming pendant
is pressed.
When the servo power is turned OFF, the SERVO ON LED on the
programing pendant is turned OFF.
Injury or damage to machinery may result if the emergency stop circuit
cannot stop the manipulator during an emergency. The manipulator
should not be used if the emergency stop button does not function.
Figure 1: Emergency Stop Button

• In the case of not using the programming pendant, be sure to


supply the emergency stop button on the equipment. Then before
operating the manipulator, check to be sure that the servo power is
turned OFF by pressing the emergency stop button.
Connect the external emergency stop button to the 5-6 pin and
16-17 pin of the robot system signal connector (CN2).

• Upon shipment of the robot controller, this signal is connected by a


safety signal short circuit connector. To use the signal, make sure to
supply a new connector, and then input it.
If the signal is input with the safety signal short circuit connector, it does
not function, which may result in personal injury or equipment damage.

• Once the emergency stop button is released, clear the cell of all
items which could interfere with the operation of the manipulator.
Then turn the servo power ON.
Injury may result from unintentional or unexpected manipulator motion.
Figure 2: Release of Emergency Stop Button
TURN

• Observe the following precautions when performing teaching


operations within the manipulator’s operating range:
– View the manipulator from the front whenever possible.
– Always follow the predetermined operating procedure.
– Ensure that you have a safe place to retreat in case of
emergency.
Improper or unintended manipulator operation may result in injury.

xii 169286-1CD 12 of 85
169286-1CD
MotoPlus SDK for Visual Safety
Studio

CAUTION
• All operators, programmers, maintenance personnel, supervisors,
and anyone working near the system must be familiar with the
operation of this equipment.
– All personnel involved with the operation of the equipment must
understand potential dangers of operation.

• General safeguarding tips:


– Place system in E-STOP mode whenever it is not in use.
– Use lockout/tagout procedures during equipment maintenance in
accordance with ANSI/RIA R15.06-2012, section 4.2.5, Sources
of Energy. Refer also to Section 1910.147 (29CFR, Part 1910),
Occupational Safety and Health Standards for General Industry
(OSHA).
– Only trained personnel familiar with the operation of this
equipment, the operator's manuals, the system equipment, and
options and accessories can operate equipment.
Improper operation can result in personal injury and/or damage to the
equipment.
• If the light in the operator's working space is not bright enough,
provide the space with appropriate lighting.

CAUTION
• Store industrial tools, etc. in a safe location outside the Robot's
operating range.
If an industrial tool, etc. is left unattended on the Robot, on a fixture, or
on the floor, etc., the Robot may come in contact with the industrial tool
left unattended, which may result in damage to the Robot and/or the
fixture.

xiii 169286-1CD 13 of 85
169286-1CD

MotoPlus SDK for Visual Safety


Studio

Operation Safety

DANGER
• Personnel engaged in teaching or inspection, etc. of the Robot must
receive special training required by applicable laws and regulations.
• While performing inspection and maintenance, wiring, or attaching a
tool to the Robot, etc., make sure to turn OFF the power supply of
the Robot Controller and the tool, and keep the switch of the power
supply locked so that unauthorized personnel cannot turn ON the
power supply.
In addition, display a warning sign stating “Energizing Prohibited”.
YRC1000

Turning ON the power supply without due care during inspection


and maintenance, etc., may cause electric shock or unexpected
movement of the Robot, which may result in personal injury.

• Use the Robot only within the specifications described in the


manuals for the Robot.
Failure to observe this instruction may result in personal injury and/or
equipment damage.

• Observe the following precautions when performing a teaching


operation within the Robot's operating range:
– Be sure to perform lockout by putting a lockout device on the
safety fence when going into the area enclosed by the safety
fence. In addition, the operator of the teaching operation must
display the sign that the operation is being performed so that no
other person closes the safety fence.
– View the Robot from the front whenever possible.
– Always follow the predetermined operating procedure.
– Always keep in mind emergency response measures against the
Robot’s unexpected movement toward a person.
– Ensure a safe place to retreat in case of emergency.
Failure to observe this instruction may cause improper or unintended
movement of the Robot, which may result in personal injury.

xiv 169286-1CD 14 of 85
169286-1CD
MotoPlus SDK for Visual Safety
Studio

DANGER
• Before operating the Robot, make sure the servo power is turned
OFF by performing the following operations. When the servo power
is turned OFF, the SERVO ON LED on the Programming Pendant is
turned OFF.
– Press the EMERGENCY STOP buttons on the front door of the
Robot Controller, on the Programming Pendant, on the external
control device, etc.
– Disconnect the safety plug of the safety fence.
(when in the PLAY mode or REMOTE mode)
If operation of the Robot cannot be stopped in an emergency, personal
injury and/or equipment damage may result.
• Make sure that all safety protection devices are activated before
starting a job in the PLAY mode.
• Confirm that no person is present in the Robot's operating range
and that the operator is in a safe location before:
– Turning ON the Robot Controller
– Moving the Robot by using the Programming Pendant
– Running the system in the TEACH mode
– Performing automatic operations
Personal injury may result if a person enters the Robot's operating
range during operation
• Immediately press an EMERGENCY STOP button whenever there
is a problem.
Emergency Stop Button

Programming Pendant YRC1000

xv 169286-1CD 15 of 85
169286-1CD

MotoPlus SDK for Visual Safety


Studio

WARNING
• Read “Safety” of the Robot Controller instructions before operating.
Not reading and understanding chapter 1 of the Robot Controller
instruction can result in death or serious injury.

• Read and understand all Warning Labels before operating.


Not reading and understanding all Warning Labels can result in death
or serious injury.
• Confirm that no person is present in the P-point maximum envelope
of the Robot before:
– Turning on the power for the Robot Controller.
– Moving the Robot with the Programming Pendant.
– Running the system in the TEACH mode.
– Performing automatic operations.
Injury may result if anyone enters the working envelope of the Robot
during operation. Always press an EMERGENCY STOP button
immediately if there are problems.

• Observe the following when performing teaching operation within


the operating range:
– Lockout by putting a lockout device on the safety fence when
going into the area enclosed by the safety fence.
– Display a sign that operations are being performed so no other
person closes the safety fence.
– View from the front whenever possible.
– Always follow the predetermined operating procedure.
– Always keep in mind emergency response measures against
unexpected movement toward a person.
– Ensure a safe place to retreat in case of emergency.
Failure to observe this precautions may cause improper or unintended
movement, which may result in personal injury.
• Maintenance and inspection must be performed by specified
personnel.
Failure to observe this Warning may result in electric shock or injury.
• Contact Customer Support for disassembly or repairs.
Not contacting Customer Support can result in electrical shock or injury.

xvi 169286-1CD 16 of 85
169286-1CD
MotoPlus SDK for Visual Safety
Studio

CAUTION
Robot Cells have Collaborative Motion functionality:
Collaboration is a special type of operation between a
person and Robot sharing a common workspace. The
following are the guidelines for collaborative operation.
1. Used for pre-determined tasks.
2. Possible when all protective measures are active.
3. For Robots with features specifically designed for
collaborative operation.
The integrator shall include in the information for use the
safeguards and mode selection required for collaborative
operation.

CAUTION
• Do not operate the Robot when a [COOLING FAN2 ERROR]
appears on the Programming Pendant.
If operation continues with a warning message, equipment damage can
occur.

• During high speed continuous operation Robot temperature may


rise quickly depending on ambient temperature and operation
pattern.
If a warning message displays stop operations or equipment damage
may occur.

• Monitor warning messages on the Programming Pendant.


Not monitoring warning messages may cause equipment damage.

• Refer to the Controller Concurrent I/O manual for details on the


signal output.
Not referring to Controller Concurrent I/O manual can result in
equipment damage.

xvii 169286-1CD 17 of 85
169286-1CD

MotoPlus SDK for Visual Safety


Studio

Maintenance Safety

WARNING
• Make sure equipment has no potentially hazardous conditions.
– area is clean and free of water, oil, debris, etc.
– all safeguards are in place.
– all safety equipment work correctly. Repair or replace any non-
functioning safety equipment immediately.
– Check the EMEREGENCY STOP button(s) for proper operation
before programming. The equipment must be in E-STOP mode
when not in use.
If a hazardous condition is present death or serious injury may occur.

• Use care when modifying software.


– The equipment allows modifications to the software for maximum
performance.
All modifications made to the software will change the way the
equipment operates and may cause death or serious injury, as well as
damage parts of the system.

• Make sure all modifications did not make create a hazardous or


dangerous condition in all modes.
All modifications made to the software will change the way the
equipment operates and may cause death or serious injury, as well as
damage parts of the system.

• Disconnect and lockout/tagout all sources of energy before making


modifications or connections.
Not disconnecting and doing lockout/tagout of all sources of energy can
result in death or serious injury.

• Read and understand all maintenance procedures before


completing procedures.
Not reading and understanding maintenance procedure may result in
death or serious injury.

xviii 169286-1CD 18 of 85
169286-1CD
MotoPlus SDK for Visual Safety
Studio

CAUTION
• Do not modify the Robot Controller.
Making modifications without written permission from YASKAWA will
void the warranty.

• Back up all programs and jobs onto suitable media before program
changes are made.
To avoid loss of information, programs, or jobs, a backup must always
be made before any service procedures are done and before any
changes are made to options, accessories, or equipment.

• Use proper replacement parts only.


Not using proper replacement parts can cause damage to equipment.

• All connections must be made within the standard voltage and


current ratings of the equipment.
Improper connections can damage the equipment.

Notes for Moving and Transferring the Robot

DANGER
• When relocating, transferring, or selling the Robot, make sure that
the Robot is always accompanied by its manuals so that all users
have access to necessary manuals.
See the Bill of Material for a list of the manuals.

If any of them is missing, contact Customer Support. The telephone


numbers of our offices are listed on the back cover of this manual.

• If a warning label on the Manipulator or the Controller is dirty and


unreadable, clean the label to make it clearly readable. If a warning
label has come off, put the label back in place. Note that some local
laws and regulations may prohibit equipment operation if safety
labels are not in place.
Contact Customer Support if requiring new warning labels.

• After the Robot is relocated, inspection by Customer Support is


recommended.
If installation or wiring of a device is incorrect, personal injury and/or
equipment damage may result.

xix 169286-1CD 19 of 85
169286-1CD

MotoPlus SDK for Visual Safety


Studio

Definition of Terms Used Often in This Manual


The Robot is the YASKAWA industrial robot product.
The Robot usually consists of a Manipulator, Robot Controller,
Programming Pendant, and Robot cables.
In this manual, the equipment is designated as follows:
Equipment Manual Designation
DX100, DX200, FS100, YRC1000 and Robot Controller
YRC1000micro controller
DX100, DX200, FS100, YRC1000 and Programming Pendant
YRC1000micro Programming Pendant
Manipulator Manipulator
Cable between the Robot and the Robot cable
Controller
Positioner Positioner
Controller, Programming Pendant, Robot
Manipulator
Robot Controller (FS100 and safety signal short circuit connector
YRC1000micro) Programming Pendant
safety signal short circuit connector

Descriptions of the Programming Pendant keys, buttons, and displays are


shown as follows:
Equipment Manual Designation
Programming Character Keys The keys which have characters or symbols
Pendant /Symbol Keys printed on them are denoted with [ ].
e.g. [ENTER]
Axis Keys [Axis Key] and [Numeric Key] are generic
/Numeric Keys names for the keys for axis operation and
number input.
Keys pressed When two keys are to be pressed
simultaneously simultaneously, the keys are shown with a “+”
sign between them, e.g. [SHIFT]+[COORD].
Mode Switch Mode Switch can select three kinds of modes
that are denoted as follows: REMOTE, PLAY or
TEACH.
(The switch names are denoted as symbols)
Button The three buttons on the upper side of the
Programming Pendant are denoted as follows:
START, HOLD, or EMERGENCY STOP.
(The button names are denoted as symbols)
Displays The menu displayed in the Programming
Pendant is denoted with { }.
e.g. {JOB}

xx 169286-1CD 20 of 85
169286-1CD
MotoPlus SDK for Visual Safety
Studio

Start Button* Hold Button*

START HOLD

Mode Switch*

P
EM
ER

O
T
GENCY S

REMOTE
EMERGENCY STOP Butto
PLAY
TEACH

Page Key
Coordinate Key
Axis Keys

Shift Key

Enter Key
*The button/switch names
Numeric Keys are denoted as symbols.

Registered Trademark
In this manual, names of companies, corporations, or products are
trademarks, registered trademarks, or bland names for each company or
corporation. The indications of ® and TM are omitted.

xxi 169286-1CD 21 of 85
169286-1CD

MotoPlus SDK for Visual Robot Disposal


Studio

Robot Disposal

WARNING
• Take precautionary measures to prevent the Robot from
overturning, such as anchoring it firmly, etc., even when temporarily
storing it before disposal.
Failure to observe this instruction may cause overturning of the Robot,
which may result in personal injury.

CAUTION
• Do not modify the Robot
Failure to observe this instruction can cause fire, mechanical failure, or
malfunction, which may result in personal injury and/or equipment
damage.

NOTICE
• When disposing of or recycling the Robot, follow the
applicable national/local laws and regulations.
• This symbol is applicable in some locations.
The wheelie bin symbol on this product, manual or its
packaging indicates that at the end of life the product
should enter the recycling system. It must be disposed at
an appropriate collection point for electrical and electronic
equipment (EEE) and should not be put in the normal
waste stream.

xxii 169286-1CD 22 of 85
169286-1CD
MotoPlus SDK for Visual Customer Support Information
Studio

Customer Support Information


If you need assistance with any aspect of the MotoPlus SDK for Visual
Studio system, contact Customer Support at the following 24-hour
telephone number:

(937) 847-3200
For routine technical inquiries, Customer Support can also be contacted
at the following e-mail address:

techsupport@motoman.com

When using e-mail to contact Customer Support, provide a detailed


description of your issue, along with complete contact information. Allow
approximately 24 to 36 hours for a response to your inquiry.

NOTICE
Use e-mail for routine inquiries only. If there is an urgent or emergency
need for service, replacement parts, or information, contact Customer
Support using the 24-hour telephone number.

Please have the following information ready before you call:

• System

MotoPlus SDK for Visual Studio


including name/model of laser sensor

• Manipulator

• Positioner

• Primary Application Welding

• Robot Controller

DX100, DX200, FS100, YRC1000


and YRC1000micro

• Software Version

Access this information on the


Programming Pendant’s LCD by
selecting {MAIN MENU} - {SYSTEM
INFO} - {VERSION}

• Robot Serial Number

Located on the robot data plate

• Robot Sales Order Number

Located on the Robot Controller data


plate

xxiii 169286-1CD 23 of 85
169286-1CD

MotoPlus SDK for Visual Table of Contents


Studio

Table of Contents

1 Outline............................................................................................................................................. 1-1

1.1 Introduction ........................................................................................................................ 1-1

1.2 What MotoPlus Can Do ..................................................................................................... 1-1

1.2.1 Supported Services .............................................................................................. 1-1

1.3 Development Process........................................................................................................ 1-3

1.4 Notices ............................................................................................................................... 1-4

2 SDK Installation and Setup ............................................................................................................. 2-1

2.1 System Requirements........................................................................................................ 2-1

2.2 Installation of SDK ............................................................................................................. 2-2

2.3 Setup of Robot Controller .................................................................................................. 2-3

2.3.1 Install VGA Adapter Cable for Debugging ............................................................ 2-3

2.3.2 Enabling MotoPlus................................................................................................ 2-5

2.4 Enable Telnet for Debugging ............................................................................................. 2-7

3 Creating MotoPlus Application ........................................................................................................ 3-1

3.1 Rules for Application Source Code .................................................................................... 3-1

3.2 Creating a MotoPlus Project in Visual Studio .................................................................... 3-2

3.3 Adding Files to the Project ................................................................................................. 3-3

3.4 Creating a MotoPlus Library .............................................................................................. 3-4

3.5 Using a MotoPlus Library In Your Project .......................................................................... 3-6

3.6 Building Your Application ................................................................................................... 3-7

3.7 Building Your Project for Multiple Controller Platforms .................................................... 3-10

4 Installation and Startup of MotoPlus Application............................................................................. 4-1

4.1 Installation of Application Program in Maintenance Mode ................................................. 4-1

4.2 Start-up of Application Program......................................................................................... 4-6

4.3 To Temporarily Prevent MotoPlus Application from Starting ............................................. 4-6

5 Debugging....................................................................................................................................... 5-1

5.1 Debugging Environment .................................................................................................... 5-1

5.2 Commands for Printing to Standard-output (stdout) .......................................................... 5-1

5.3 Viewing Output on Computer Monitor................................................................................ 5-1

xxiv 169286-1CD 24 of 85
169286-1CD
MotoPlus SDK for Visual Table of Contents
Studio

5.4 Viewing Output on PC Console Window ........................................................................... 5-2

5.4.1 Setup of Robot Controller ..................................................................................... 5-2

5.4.2 Establishing Telnet Connection ............................................................................ 5-3


5.4.2.1 Automatic Login to Telnet Shell............................................................... 5-3
5.4.2.2 Manual Login to Telnet Shell................................................................... 5-4

5.5 Development Support Tools for YRC1000 and YRC1000micro ........................................ 5-5

5.5.1 Introduction........................................................................................................... 5-5

5.5.2 Overview of Functions .......................................................................................... 5-5

5.5.3 Using the Support Tools ....................................................................................... 5-6

5.5.4 Basic Settings....................................................................................................... 5-7


5.5.4.1 Connecting a PC to Robot Controller ...................................................... 5-7
5.5.4.2 Communication Settings ......................................................................... 5-7

5.5.5 Online Download .................................................................................................. 5-8

5.5.6 System Settings ................................................................................................... 5-8

5.5.7 Inserting the USB Memory in the Controller ......................................................... 5-9


5.5.7.1 Operating Procedure ............................................................................. 5-10
5.5.8 Application Property List..................................................................................... 5-11
5.5.8.1 Tool Operating Procedure: .................................................................... 5-11
5.5.8.2 How to Set Application Information ....................................................... 5-11
5.5.8.3 Setting Procedures................................................................................ 5-12

5.5.9 Port Debug ......................................................................................................... 5-14


5.5.9.1 Measuring Procedures .......................................................................... 5-15
5.5.9.2 Optional for Measuring .......................................................................... 5-15
5.5.9.3 Registering Data for the Port Debug Function ...................................... 5-17
5.5.9.4 Debug Port APIs ................................................................................... 5-18

5.5.10 Copy Protection ................................................................................................ 5-20


5.5.10.1 Protection Activation ........................................................................... 5-20
5.5.10.2 Acquiring the Serial File (MotoPlus Monitor) ....................................... 5-21
5.5.10.3 Generating the Protection Key ............................................................ 5-22
5.5.10.4 Loading the Protection Key (MotoPlus Monitor).................................. 5-23

6 Alarm List ........................................................................................................................................ 6-1

7 Advanced mpBuilder Usage ........................................................................................................... 7-1

7.1 Visual Studio MakeFile Project .......................................................................................... 7-1

7.2 Compiler Arguments .......................................................................................................... 7-3

7.2.1 CompilerArguments.mps ...................................................................................... 7-3

7.2.2 LinkerArguments.mps........................................................................................... 7-3

xxv 169286-1CD 25 of 85
169286-1CD

MotoPlus SDK for Visual Table of Contents


Studio

Appendix A ........................................................................................................................................A-1

A.1 Compatibility with Windows 8/10 .......................................................................................A-1

A.1.1 Symptom of Problem:...........................................................................................A-1

Appendix B ........................................................................................................................................B-1

B.1 Compatibility with Visual Studio 2015................................................................................B-1

B.1.1 Symptom of Problem:...........................................................................................B-1

xxvi 169286-1CD 26 of 85
169286-1CD
MotoPlus SDK for Visual 1 Outline
Studio 1.1 Introduction

1 Outline

1.1 Introduction
MotoPlus Software Development Kit (SDK) is used to develop customer
specific applications that operate on the main CPU board of the
YASKAWA robot controller. The application is run concurrently to the robot
firmware, in real time. Programming of the application is done using C
language with Microsoft Visual Studio. Users can develop a variety of
application programs on their own without modifying the source code of
the robot controller.
This advanced toolset is intended only for experienced software
developers who are familiar with the C programming language.

1.2 What MotoPlus Can Do


Users can use the C language, a general programming language, and
MotoPlus libraries to develop a customer specific application program in
which various types of resources are used, e.g., the Ethernet
communication port, the RS232C serial communication port, and the
programming pendant of the robot controller.

1.2.1 Supported Services


MotoPlus SDK provides users with a variety of services as follows:

 Application task control


Application task (thread) start/stop, data transmission between application
programs by the mailbox and semaphore, exclusive control and execution
synchronization

 Robot control
Robot control from the application program

 JOB control
Start-stop control of the JOB by the application, data transmission
between Jobs by variables (byte, integer, double-precision, floating point,
character string, and position variable), and execution synchronization

 CIO control
I/O between the application program and the robot CIO including read/
write access to registers

 Ethernet communication control


Industry standard Ethernet (TCP/IP) communication available through
standard sockets

 Programming pendant communication


Data transmission between the application and the programming pendant
application

 Robot event notification


Event notification to the application at every I/O control cycle and
interpolation control cycle of the system

 RS232C serial communication control


RS232C serial communication from the application

1-1 169286-1CD 27 of 85
169286-1CD

MotoPlus SDK for Visual 1 Outline


Studio 1.2 What MotoPlus Can Do

 Sensor control
Robot path correction, adjustment, and control can be achieved while
reacting to external sensors

 Memory management
Dynamic and static memory allocation

 General-purpose file control (Not Available on DX100)


Interface with custom data files to save/load application settings

 Existing file control (Not Available on DX100)


Interface with standard robot files (DAT, CND, JBI, etc…)

 Servo control
Control servo power for automated robot operation

 User watchdog
Watchdog to monitor whether the application operates normally

 Coordinate conversion (Not Available on DX100)


Forward and inverse kinematic calculations available for position and
frame calculations

1-2 169286-1CD 28 of 85
169286-1CD
MotoPlus SDK for Visual 1 Outline
Studio 1.3 Development Process

1.3 Development Process

1-3 169286-1CD 29 of 85
169286-1CD

MotoPlus SDK for Visual 1 Outline


Studio 1.4 Notices

1.4 Notices

NOTICE
• C language allows for dynamic memory operations. When
programming in C language, pointers with memory addresses may
be used. If the pointer variable is set incorrectly, the system memory
area may be rewritten.
If the system memory area is rewritten, critical problems occur, e.g.,
the software hangs up (the hang-up status is detected by a CPU
exception or the watchdog check function, then the servo power
turns OFF and the system shuts down), the robot stops its operation
due to an alarm, or the programming pendant becomes inoperable. If
the system memory operation is incorrect, the application itself may
not operate as it is designed.
• The task “mpUsrRoot”, which starts when the power is turned ON,
has a high priority to start other application tasks and initialize the
entire application quickly. Due to its high task priority, if a time-
consuming process (0.1 milliseconds or longer) is done in this task,
the processing time for the robot control becomes insufficient. Then
system alarms may occur or the programming pendant or the HOLD
button may freeze. Thus, as shown in the sample program (refer to
Task Control Sample Program” in “Programmer’s Manual for New
Language Environment MotoPlus”, make sure to complete the task
“mpUsrRoot” after starting up another application or creating a
semaphore.
• Debugging via Telnet
1.After completing debugging, set the Telnet function to INVALID
(S2C1119 = 0). This is because the Telnet function consumes system
processing time, and an alarm may occur due to insufficient
processing time for robot operation.
2. With the Telnet function, debug only tasks with normal priority. For
debugging the tasks with high priority (the tasks started with the task
priority: MP_PRI_IO_CLK_TAKE, MP_PRI_IP_CLK_TAKE, or
MP_TIME_CRITICAL, or task “mpUsrRoot”), use the robot variables
visible on the programming pendant. This is because, if printf() or
puts() is done with a high priority task, processing time for robot
operation control is consumed, and a system alarm may occur due to
insufficient processing time.
3. After completing debugging, make sure to disable the debugging
code using printf() or puts(). This is because the processing time of
printf() and puts() influences the system, and an error may occur
such as insufficient processing time during robot operation.
When using VxWorks SHELL commands, which become available by
connecting with the controller via Telnet, a system alarm may occur due
to insufficient processing time for robot operation. Do NOT use the
VxWorks SHELL commands.

1-4 169286-1CD 30 of 85
169286-1CD
MotoPlus SDK for Visual 2 SDK Installation and Setup
Studio 2.1 System Requirements

2 SDK Installation and Setup

2.1 System Requirements


The following requirements must be met for the host computer used to
develop the MotoPlus application:
PC with Windows XP SP2, Vista, 7, 8, or 10
Microsoft
Windows
.Net 3.5
Framework
USB Included with SDK package
Hardware
Key
Dongle
Microsoft 2008 Standard, Professional
Visual 2010 Professional, Premium, Ultimate
Studio Visual C++ 2010 Express (free download from Microsoft)
2012 Professional, Premium, Ultimate
2012 Express for Windows Desktop (free download from Microsoft)
2013 Professional, Premium, Ultimate
2013 Express for Windows Desktop (free download from Microsoft)
2015 Professional, Enterprise
2015 Community (free download from Microsoft)
2017 Professional, Enterprise
2017 Community (free download from Microsoft)

Not compatible with “Visual Studio Code”.


External Compact Flash (CF) or USB Flash (USB)
memory
card to
load on
robot
pendant
User Administrator rights required
Rights on
PC

2-1 169286-1CD 31 of 85
169286-1CD

MotoPlus SDK for Visual 2 SDK Installation and Setup


Studio 2.2 Installation of SDK

2.2 Installation of SDK

NOTICE
Do not insert the USB hardware key dongle into the computer until after
installing the Sentinel driver.

1. Insert the MotoPlus SDK for Visual Studio disc into your Windows PC.
If AutoRun is enabled, the installation will automatically start.
Otherwise, run “setup.exe” from the root of the DVD.

NOTICE
The license agreement is located on the root of your installation DVD.
Please read this prior to installing the software. You will be required to
agree to the terms of the licensing.

2. Click [Next] and continue through the installation.


3. When installation is complete, you must reboot the computer to
register system environment variables required by the compiler.
4. After restarting the PC, please install the Sentinel driver located on the
root of your installation DVD. This is required for the USB hardware
key dongle.

NOTICE
If you are installing the Sentinel driver on a notebook/laptop computer,
it is recommended to first remove the computer from any docking
station(s) prior to installation.

5. Insert the USB hardware key dongle into your PC.

2-2 169286-1CD 32 of 85
169286-1CD
MotoPlus SDK for Visual 2 SDK Installation and Setup
Studio 2.3 Setup of Robot Controller

Installation of the SDK is now complete.

2.3 Setup of Robot Controller

2.3.1 Install VGA Adapter Cable for Debugging


(Not Available on FS100 or YRC1000micro)
The SDK package comes with a VGA adapter cable. This cable allows
you to connect a standard VGA computer monitor to view program output.
It should only be used for application debugging purposes and not
shipped with a production robot controller.

CAUTION
• Follow standard ESD safe procedures when handling the CPU
board!
Static electricity can severely damage sensitive electronics.

1. Power off the robot controller.


2. Locate and remove the CPU board in the controller chassis. See Table
for board number. The board is secured with two screws on top and
bottom. You may also have to temporarily disconnect all cables going
to connectors CN103, CN104, CN105 and CN106.
Table 2-1: CPU Board in Controller Chassis.
Controller CPU Board Part Number
DX100 JANCD-YCP01
DX200 JANCD-YCP21
YRC1000 ACP01

DX100 and DX200 YRC1000


Controller Chassis Controller Chassis

2-3 169286-1CD 33 of 85
169286-1CD

MotoPlus SDK for Visual 2 SDK Installation and Setup


Studio 2.3 Setup of Robot Controller

3. Connect the VGA adapter cable to the pin header on the CPU board
and route the cable out of the chassis. If equipped carefully open the
plastic tab which is securing the opening and install the cable.

DX100 and DX200 YRC1000


Pin Header Pin Header

4. Reinsert the CPU board into the controller chassis, tighten the screws
securing the board, and reconnect all cables removed in the previous
steps.

DX100 and DX200 YRC1000


Reassembly Reassembly

2-4 169286-1CD 34 of 85
169286-1CD
MotoPlus SDK for Visual 2 SDK Installation and Setup
Studio 2.3 Setup of Robot Controller

2.3.2 Enabling MotoPlus


(Not Available on DX100)
The MotoPlus function must be enabled in MAINTENANCE mode.
1. Boot the robot controller in MAINTENANCE mode.
2. Upgrade to MANAGEMENT level security. Touch [System] > [Setup].

3. Select “OPTION FUNCTION”.

2-5 169286-1CD 35 of 85
169286-1CD

MotoPlus SDK for Visual 2 SDK Installation and Setup


Studio 2.3 Setup of Robot Controller

4. Set “MotoPlus FUNC.” to “USED”. Press {ENTER} to save your


change. If you are asked to “Initialize related file SRAM.DAT”, touch
[YES].

5. Set “MOTOMAN DRIVER” to “USED”.


• Make sure to set this AFTER “MotoPlus FUNC.” If these are set in
the wrong order, please set both functions to “NOT USED” and then
toggle them back to “USED” in the correct order.

NOTICE
The MOTOMAN DRIVER option is only available if the controller has
the following software version or greater:
• FS100: FS3.30.00-00
• DX200: DN2.21.00-00
• YRC1000: YAS1.11.00-00
• YRC1000micro: Any

2-6 169286-1CD 36 of 85
169286-1CD
MotoPlus SDK for Visual 2 SDK Installation and Setup
Studio 2.4 Enable Telnet for Debugging

2.4 Enable Telnet for Debugging


One of the options for debugging is to connect to the robot using a telnet
connection. (See Chapter 5 “Debugging”).
On Windows 7, the default telnet console is not enabled by default. This
must be enabled prior to debugging.
1. Click the Windows START orb, and type “programs and features”, then
press [Enter].
2. From the menu on the left, select “Turn Windows features on or off”.

Wi
ndo
wF
eat
ure
s

3. In the Windows Features list, check the box next to “Telnet Client” and
click [OK].

2-7 169286-1CD 37 of 85
169286-1CD

MotoPlus SDK for Visual 3 Creating MotoPlus Application


Studio 3.1 Rules for Application Source Code

3 Creating MotoPlus Application

3.1 Rules for Application Source Code


Be sure to observe the following rules when creating source code.
Refer to the MotoPlus Programmer's manual for detailed information on
programming configuration and sample programs.

NOTICE
Sample source code files are located in your installation directory and
on the MotoPlus for Visual Studio installation disc.

Please remember that the source code should follow ANSI-C syntax. The
only exception is that users should not define a “main (...)” function. This is
replaced by “mpUsrRoot(...)”.
1. Up to 32 one-byte characters can be used for a file name. Up to 16
two-byte characters can also be used. File names are case-sensitive.
Set '.c' as the file extension. (C++ library is not fully supported on the
MotoPlus platform)
2. Put “#include <MotoPlus.h>” at the top of each source code file. When
“MotoPlus.h” is included, all services provided by MotoPlus are
available.
3. MotoPlus applications do not have a “main” function. This is replaced
by “mpUsrRoot”. This function must have the following signature:

void mpUsrRoot (int arg1, int arg2, int arg3, int arg4, int arg5, int arg6,
int arg7, int arg8, int arg9, int arg10)

4. mpExitUsrRoot must be called at the end of mpUsrRoot.


5. The task “mpUsrRoot” is launched at a high task priority. Due to its
high task priority, if a time-consuming process (0.1 milliseconds or
longer) is done in this task, the processing time for the robot control
becomes insufficient. This can interrupt robot startup and freeze the
pendant. Therefore, you should immediately launch a new normal
priority task from mpUsrRoot and then call mpExitUsrRoot.

NOTICE
When creating a new MotoPlus project in Visual Studio, a “main”
template is automatically generated.

3-1 169286-1CD 38 of 85
169286-1CD
MotoPlus SDK for Visual 3 Creating MotoPlus Application
Studio 3.2 Creating a MotoPlus Project in Visual Studio

3.2 Creating a MotoPlus Project in Visual Studio


Open Visual Studio on your development PC. Select [File] > [New Project].
The MotoPlus project is found under {Templates} > {Other Languages} >
{Wizards}.

NOTICE
Do not include any spaces when naming your project.

Click [OK] and a new project is created in the specified location. This
project is automatically configured to build using the MotoPlus compiler. A
template source file (mpMain.c) is added to the project. Also included are
files which specify the project-specific arguments to the compiler and
linker.

NOTICE
The .mps files must not be removed from your MotoPlus project.

3-2 169286-1CD 39 of 85
169286-1CD

MotoPlus SDK for Visual 3 Creating MotoPlus Application


Studio 3.3 Adding Files to the Project

3.3 Adding Files to the Project


Files can be added to your MotoPlus project through the standard Visual
Studio interface. Right-click on the project tree and select {Add} > {New
Item…} or {Add} > {Existing Item…}. Alternatively, you can perform the
same action from the {Project} dropdown in the Main Menu.

When adding new items to the project, the file must end in a supported
extension. Header files should have a “.h” extension. Source files should
have a “.c” extension.

NOTICE
C++ (.cpp) files are not supported by the MotoPlus environment.

Files for the project do not have to be in a flat directory. They can be in any
folder relative to the Project Directory.

3-3 169286-1CD 40 of 85
169286-1CD
MotoPlus SDK for Visual 3 Creating MotoPlus Application
Studio 3.4 Creating a MotoPlus Library

3.4 Creating a MotoPlus Library


As a MotoPlus developer, you can share routines by distributing a
compiled MotoPlus library. This library can be used by other developers
without exposing proprietary source code. Instead of building an
executable module (.out), this will build a library without the main entry
point for execution.

NOTICE
MotoPlus library files end in extension .mpLib (DX100),.fsLib (FS100),
.dnLib (DX200) and .yrcLib (YRC1000 or YRC1000micro). Libraries
must be compiled for each robot controller separately.

A MotoPlus library is created in the same manner as a MotoPlus project.


From the New Project window, select the MotoPlusLibrary wizard.

3-4 169286-1CD 41 of 85
169286-1CD

MotoPlus SDK for Visual 3 Creating MotoPlus Application


Studio 3.4 Creating a MotoPlus Library

A project is generated with a template source file (mpLibrary.c) and


header file (mpLibrary.h) to get you started.

The project is automatically configured to build a library instead of


executable file.

NOTICE
When distributing a MotoPlus library, be sure to include a header file
which provides functional declarations for each public function in your
library. Function declarations should begin with “extern”.
Example: extern void mpLibraryFunction1();

3-5 169286-1CD 42 of 85
169286-1CD
MotoPlus SDK for Visual 3 Creating MotoPlus Application
Studio 3.5 Using a MotoPlus Library In Your Project

3.5 Using a MotoPlus Library In Your Project


MotoPlus library files can be added to your project like any other file.
Right-click the project tree and select {Add} > {Existing Item…}.
The library developer should have also provided a header file with the
declarations for all public functions in the library. Each declaration should
begin with “extern”. Example:
extern void mpLibraryFunction1();
If your application is targeted toward multiple controller platforms, you
must add a library for each controller type. When building the project, the
compiler will ignore libraries which are targeted for a different controller
platform.

NOTICE
MotoPlus library files end in extension .mpLib (DX100), .fsLib (FS100),
.dnLib (DX200) and .yrcLib (YRC1000 or YRC1000micro).

3-6 169286-1CD 43 of 85
169286-1CD

MotoPlus SDK for Visual 3 Creating MotoPlus Application


Studio 3.6 Building Your Application

3.6 Building Your Application


The MotoPlus application (or library) can be built directly from within
Visual Studio. The project is automatically configured to pass all files in the
Solution Explorer to the MotoPlus compiler.
First select your target controller platform from the Configuration Manager
dropdown.

Co
ntr
olle
r

NOTICE
You must have a license key for each target controller platform.
Upgrade licenses are available for each controller type.

Next, select the appropriate Build option from the {Build} menu.

3-7 169286-1CD 44 of 85
169286-1CD
MotoPlus SDK for Visual 3 Creating MotoPlus Application
Studio 3.6 Building Your Application

If there are any errors/warnings in your source files, they will be displayed
in the Visual Studio Error List. You can double-click the error entry to go
directly to the problematic line of code.

The Output pane contains the full output text of the compiler.

3-8 169286-1CD 45 of 85
169286-1CD

MotoPlus SDK for Visual 3 Creating MotoPlus Application


Studio 3.6 Building Your Application

If there are no errors in the code, the Output pane will indicate “Build
Successful!” By default, the compiled module will be located in the folder:
<Solution Directory> \ <Controller Platform> \ <Project name>

NOTICE
The output directory and file name can be customized by modifying the
NMake Configuration Properties.
See Chapter 7 “Advanced mpBuilder Usage” for more details

3-9 169286-1CD 46 of 85
169286-1CD
MotoPlus SDK for Visual 3 Creating MotoPlus Application
Studio 3.7 Building Your Project for Multiple Controller Platforms

3.7 Building Your Project for Multiple Controller Platforms


The MotoPlus for Visual Studio SDK allows you to build your source code
for each of the MotoPlus-enabled YASKAWA robot controllers. This allows
you to use the same source code project for each controller. However,
there are minor differences between each controller which may affect your
application. For example, the Network Inputs I/O addresses start at
#25010 for DX100 and FS100. However, the starting address is #27010
on the DX200, YRC1000, and YRC1000micro.
For this reason, the build environment has been configured to
automatically provide a pre-processor definition for each controller type.
Using preprocessor directives, you can put a decision statement around
your code at compile-time, instead of run-time.

Example:
//evaluated at compile-time
#if (DX100 || FS100)
#define STARTING_NETIN_ADDRESS 25010
#elif (DX200 || YRC1000 || YRC1000micro)
#define STARTING_NETIN_ADDRESS 27010
#endif

void myFunction()
{
//set at run-time
int startingIoAddress = STARTING_NETIN_ADDRESS;
}

NOTICE
You must have a license key for each target controller platform.
Upgrade licenses are available for each controller type.

3-10 169286-1CD 47 of 85
169286-1CD

MotoPlus SDK for Visual 4 Installation and Startup of MotoPlus Application


Studio 4.1 Installation of Application Program in Maintenance Mode

4 Installation and Startup of MotoPlus Application

4.1 Installation of Application Program in Maintenance Mode


1. Load Function
Load the application program and install by following the instructions
below.
(1) Boot the robot controller into MAINTENANCE mode by holding
[Main Menu] on the programming pendant.
(2) Set the security mode to MANAGEMENT mode.
Select the Main Menu {MotoPlus APL.}. Then {LOAD (USER
APPLICATION)}, {FILE LIST}, {DELETE}, {DEVICE}, {FOLDER},
and {MotoPlus FUNC. SETTING} appear as submenus.

(3) Specify the file location.


Select an appropriate file location with the submenus {DEVICE (to
select CF/USB)} and {FOLDER (to select the folder which has the
application program)}.

4-1 169286-1CD 48 of 85
169286-1CD
MotoPlus SDK for Visual 4 Installation and Startup of MotoPlus Application
Studio 4.1 Installation of Application Program in Maintenance Mode

(4) Select and load a file.


• Select the submenu {LOAD (USER APPLICATION)}. Then,
“*.out” files in the specified folder appear as shown below.

• Move the cursor and press [SELECT]. Then, the selection


indicator “ ” appears on the left of the application file name.
Press [SELECT] again to clear “ ”.

• Press [ENTER], then the following confirmation dialog box


appears.

4-2 169286-1CD 49 of 85
169286-1CD

MotoPlus SDK for Visual 4 Installation and Startup of MotoPlus Application


Studio 4.1 Installation of Application Program in Maintenance Mode

• When {YES} is selected and the selected application file contains


the file which already exists in the controller, the following
confirmation dialog box appears. Select “YES” to load.

2. List
Select the submenu {FILE LIST}. Then, the list of the application files
which already exist in the controller appears.

3. Deletion of application program


By the submenu {DELETE}, the application file which already exists in
the controller can be deleted.
(1) Move the cursor and press [SELECT]. Then, the selection
indicator “ ” appears on the left of the application file name.
Press [SELECT] again to clear “ ”.

4-3 169286-1CD 50 of 85
169286-1CD
MotoPlus SDK for Visual 4 Installation and Startup of MotoPlus Application
Studio 4.1 Installation of Application Program in Maintenance Mode

(2) Press [ENTER], then the following confirmation dialog box


appears.

4. MotoPlus Function Setting


When selecting “MotoPlus FUNC. SETTING”, the following windows
appear to enable or disable the autostart of the MotoPlus application
program. For the detailed usage methods, refer to chapter 4.2 “Start-
up of Application Program” on page 4-6 and chapter 4.3 “To
Temporarily Prevent MotoPlus Application from Starting” on page 4-6.
(1) Move the cursor and press [SELECT]. The setting is changed from
“ENABLE” to “DISABLE”.

NOTICE
This screen may have different options based on which robot controller
is being used. Please refer to the Programmer's Manual for more
details.

4-4 169286-1CD 51 of 85
169286-1CD

MotoPlus SDK for Visual 4 Installation and Startup of MotoPlus Application


Studio 4.1 Installation of Application Program in Maintenance Mode

(2) Press [ENTER], and then the confirmation dialog box appears.

(3) Select {YES}.


–When {YES} is selected on the confirmation dialog box, the
parameter is set automatically, and then it returns to the
MotoPlus setting window.

4-5 169286-1CD 52 of 85
169286-1CD
MotoPlus SDK for Visual 4 Installation and Startup of MotoPlus Application
Studio 4.2 Start-up of Application Program

4.2 Start-up of Application Program


When the controller is turned ON, the application program is loaded
automatically and started.
<Limitations>
• Only one “*.out” file can be loaded. Thus, install only one application.
If two or more applications are installed, the alarm 1020:
“MOTOPLUS APPLICATION LOAD ERROR [1]” occurs on loading.
The error status can be checked by reading $B051 from the job.
• The loadable memory size is up to 2 Mbyte as the total of the code
area and the static memory area. If it is more than 2 Mbyte, the start-
up fails and the alarm 1020: “MOTOPLUS APPLICATION LOAD
ERROR [4]” occurs on loading. The error status can be checked by
reading $B051 from the job.
$B051 0: The application is loaded successfully on start-up.
1: The number of files exceeds the limit.
2: The memory is insufficient. (Available memory area is
less than 2 Mbyte.)
3: APPLICATION folder cannot be found in the CF.
4: The size of the MotoPlus application exceeds the limit.

4.3 To Temporarily Prevent MotoPlus Application from Starting


Due to a problem of the application program, the system may hang up
during robot operation, and then the controller may not start normally. For
recovery, it is necessary to start the controller normally while preventing
the application program from operating. In this case, it is necessary to
start the controller in the MAINTENANCE mode, change the settings so
that the application program does not operate, start the controller
normally, and operate the robot. Follow one of the following two
procedures:
1. Start the controller in the MAINTENANCE mode, set the security mode
to the MANAGEMENT MODE. Select “MotoPlus APL.”, then
“DELETE” to delete the application.
2. Start the controller in the MAINTENANCE mode, set the security mode
to the MANAGEMENT MODE. Select “MotoPlus APL.”, then
“MotoPlus FUNC. SETTING” to show the setting window. Then set
“APPLI. AUTOSTART AT POWER ON” to “DISABLE”.
If the above problem occurs during robot operation, choose procedure 2.
The above problem during robot operation may be caused by a specific
condition. If the MotoPlus application is deleted with procedure 1, after the
specific condition is cleared, the MotoPlus application must be loaded
again in the CF for recovery. In this case, if the application to be loaded
does not exist there, the application cannot operate and the system
cannot recover.

4-6 169286-1CD 53 of 85
169286-1CD

MotoPlus SDK for Visual 5 Debugging


Studio 5.1 Debugging Environment

5 Debugging

5.1 Debugging Environment


Due to the nature of the real-time robotic system, MotoPlus applications
cannot be debugged using a traditional source-level debugger. The most
effective way to debug a MotoPlus application is to monitor application
output. This is done by setting variables and I/O to view on the pendant, or
by printing to standard output (stdout) within your application.
Print-statements sent to stdout can be viewed by using one of two
methods. On DX and YRC1000 robot controllers, your SDK comes with a
VGA adapter cable to connect a standard computer monitor to the robot
controller. Alternatively, you can connect to the robot via telnet to view
output within a console window on your PC.

NOTICE
Print-statements are extremely time consuming during execution. It is
highly recommended to put a debug-switch around all print statements
so that they can be disabled for final release.

5.2 Commands for Printing to Standard-output (stdout)


The commands “puts” and “printf” are available to print to stdout. The
command “puts” will print a string and automatically append a new line.
The command “printf” is used to print a formatted string with variable
arguments. The line-feed is not automatically appended to printf strings.

5.3 Viewing Output on Computer Monitor


(DX100, DX200 and YRC1000)
Please see chapter 2.3.1 “Install VGA Adapter Cable for Debugging” at
page 2-3 for instructions on installing the VGA adapter cable included with
the MotoPlus SDK.
To view output using the monitor, the monitor must be connected prior to
turning on the robot controller. If the monitor is blank, please cycle power
on the robot controller.

5-1 169286-1CD 54 of 85
169286-1CD
MotoPlus SDK for Visual 5 Debugging
Studio 5.4 Viewing Output on PC Console Window

5.4 Viewing Output on PC Console Window

5.4.1 Setup of Robot Controller


Please see chapter 2.4 “Enable Telnet for Debugging” at page 2-7 for
instructions on enabling the Windows Telnet Client in Windows 7.
Set robot parameter S2C1119 = 2 to enable telnet output. The robot must
be rebooted after setting this parameter.

NOTICE
When debugging is completed, be sure to set S2C1119 = 0. This will
prevent the telnet task from interfering with robot operation.

Connect your development PC to the robot controller LAN port via


Ethernet connection.

 DX and YRC1000 Controller


Without a Hub With a Hub

㑅ࠉᢥ 㑅ࠉᢥ

X- X+ X- X+ X- X+ X- X+
S- S+ R- R+ S- S+ R- R+
㧗㏿ 㧗㏿
Y- Y+ Y- Y+ Y- Y+ Y- Y+
L- L+ B- B+ L- L+ B- B+
㧗 㧗
Z- Z+ Z- Z+ Z- Z+ Z- Z+
U- U+ T- T+ U- U+ T- T+
ప ప
7- 7+ 7- 7+

7 8 9 7 8 9

4 5 6 4 5 6

1 2 3 1 2 3

0 . - 0 . -

Devices such as Vision


sensor to be connected via
Ethernet
Robot Controller Robot Controller

Development PC Development PC
YCP21
<&3

CN105 &1
Ethernet Ethernet
CN104 &1

Hub

 FS Controller
Without a Hub With a Hub

㑅ࠉᢥ 㑅ࠉᢥ

X- X+ X- X+ X- X+ X- X+
S- S+ R- R+ S- S+ R- R+
㧗㏿ 㧗㏿
Y- Y+ Y- Y+ Y- Y+ Y- Y+
L- L+ B- B+ L- L+ B- B+
㧗 㧗
Z- Z+ Z- Z+ Z- Z+ Z- Z+
U- U+ T- T+ U- U+ T- T+
ప ప
7- 7+ 7- 7+

7 8 9 7 8 9

4 5 6 4 5 6

1 2 3 1 2 3

0 . - 0 . -

Devices such as Vision


sensor to be connected via
Ethernet
Robot Controller Robot Controller

Development PC Development PC
CPU201R
&385

CN3 &1
Ethernet Ethernet
CN2 &1

Hub

5-2 169286-1CD 55 of 85
169286-1CD

MotoPlus SDK for Visual 5 Debugging


Studio 5.4 Viewing Output on PC Console Window

5.4.2 Establishing Telnet Connection

NOTICE
• Your computer IP address must be on the same subnet as the robot
controller.
– Example:
Robot IP - 192.168.255.1
Computer IP - 192.168.255.xxx
• Alarms such as “0500 SEGMENT PROC NOT READY” may occur
when using the telnet connection. This is because the telnet task
runs at a high priority in the system and can interfere with robot
operation. If the alarm occurs, reboot the robot controller.
Set S2C1119 = 0 when you are done debugging to prevent these
alarms during normal operation.

5.4.2.1 Automatic Login to Telnet Shell


(Not available on DX100)
On the controller, an automatic login utility is provided with the MotoPlus
for Visual Studio installation. This is accessed from the START menu
under Motoman\MotoPlus Debugging.

Prior to opening the automatic login utility, you must input the IP address
of the robot controller. An .ini configuration file is located in your MotoPlus
for Visual Studio installation directory. (Default: C:\Program Files
(x86)\Motoman\MotoPlus for Visual Studio\Telnet Debugging)
Open the .ini file for your target controller. Modify the value of “ipaddress”
to match your robot controller. After saving this file, you can now open the
automatic login utility.
After opening the automatic login utility, do not click any other windows
until the login process is complete. The process is completed when you
see the telnet shell prompt “->”.

5-3 169286-1CD 56 of 85
169286-1CD
MotoPlus SDK for Visual 5 Debugging
Studio 5.4 Viewing Output on PC Console Window

5.4.2.2 Manual Login to Telnet Shell


(all controllers)
As an alternative to the automatic login utility, you can manually login to
the telnet shell.
Open a Windows console window. The easiest method is through the
“Run…” command in the START menu.
START > Run… > Type “cmd”
Type “telnet” to open the Windows Telnet Client utility. Then type “open
<ipaddress>” to open a connection to the robot. It will prompt you for the
VxWorks login information. You have 30 seconds to type in the login
username and password before it times out.
Controller Username Password
DX100 Net_Maint_Mng 99999999
DX200 MOTOMANrobot MOTOMANrobot
FS100 MOTOMANrobot MOTOMANrobot
YRC1000 MOTOMANrobot MOTOMANrobot
YRC1000micro MOTOMANrobot MOTOMANrobot

If the login is successful, the console window will display the shell prompt
“->”.

5-4 169286-1CD 57 of 85
169286-1CD

MotoPlus SDK for Visual 5 Debugging


Studio 5.5 Development Support Tools for YRC1000 and YRC1000micro

5.5 Development Support Tools for YRC1000 and


YRC1000micro
These tools function with the YRC1000 and YRC1000micro controller.

5.5.1 Introduction
This chapter explains the functions of the tools to support development of
the MotoPlus application (hereafter referred to as “the application”).

5.5.2 Overview of Functions


The MotoPlus application development support tool contains the following
functions.
No. Function Details
1 Online Download A function which downloads the
application from Visual Studio to
the robot controller (hereafter
referred to as “the controller”).
2 Application Property List A function which displays the
detailed information, such as
the operation status of the
application.
3 Port Debug A function which measures the
processing time of the
application.
4 Copy Protection A function which prevents
applications that are copied
illegally from being used.

5-5 169286-1CD 58 of 85
169286-1CD
MotoPlus SDK for Visual 5 Debugging
Studio 5.5 Development Support Tools for YRC1000 and YRC1000micro

5.5.3 Using the Support Tools


(Visual Studio)
Each function is available from the “Tools” menu in Visual Studio. These
tools are also accessible from the Windows Start menu.
Fig. 5-1: External Tools in Visual Studio

(MotoPlus Monitor)
On the programming pendant from Main Menu select {MotoPlus APL.}
and then select {MotoPlus MONITOR} to use the functions.
Fig. 5-2: MotoPlus Monitor

5-6 169286-1CD 59 of 85
169286-1CD

MotoPlus SDK for Visual 5 Debugging


Studio 5.5 Development Support Tools for YRC1000 and YRC1000micro

5.5.4 Basic Settings

5.5.4.1 Connecting a PC to Robot Controller


Connect the development PC to the Robot Controller with a standard
Ethernet cable. Depending on which network interface(s) is enabled on
the controller, the PC should be connected to CN106 (LAN2) or CN107
(LAN3). If other devices are already connected to the network interface,
then an Ethernet switch may be used.

5.5.4.2 Communication Settings


When using any of the development support tools, you must specify the
robot to connect to via IP address. The addresses for each of the robot
controllers must first be registered using the Communication Settings tool.
From within the Communication Settings tool, simply type a name and IP
address for each robot that you will be connecting to. This list of robots will
be selectable within each of the development support tools.
Fig. 5-3: Communication Settings

5-7 169286-1CD 60 of 85
169286-1CD
MotoPlus SDK for Visual 5 Debugging
Studio 5.5 Development Support Tools for YRC1000 and YRC1000micro

5.5.5 Online Download


This function downloads the application from the development PC to the
robot controller.
Loading the application is usually performed in the maintenance mode,
however, this function allows the application to load while the controller is
online. Since this function bypasses the time and effort required for
restarting in maintenance mode, the operating time can be reduced when
debugging the application. A USB storage drive is required when using
this function.
Fig. 5-4: Online Download

5.5.6 System Settings


The following parameter is required to enable the Online Download
function.

NOTICE
Use this function only when debugging the application.
When the application is released, return the parameter to the original
value, and then load the application from within maintenance mode as
usual.

Parameter Setting value Details


S2C1113 1 Enable Online Download function
0: Invalid, 1: Valid

5-8 169286-1CD 61 of 85
169286-1CD

MotoPlus SDK for Visual 5 Debugging


Studio 5.5 Development Support Tools for YRC1000 and YRC1000micro

5.5.7 Inserting the USB Memory in the Controller


This function allows the application file to be saved to the controller. Attach
the flash drive to the USB port on the CPU board.
Fig. 5-5: Location of the USB Port on CPU Board

5-9 169286-1CD 62 of 85
169286-1CD
MotoPlus SDK for Visual 5 Debugging
Studio 5.5 Development Support Tools for YRC1000 and YRC1000micro

5.5.7.1 Operating Procedure


From the “Tools” menu in Visual Studio, select “M+ Load App into
Controller”.

NOTICE
This tool automatically launches when selecting “Start Debugging” [F5].

1. Select the controller to receive the download.


2. Select the application file (.out file) to download.
This field automatically populates with the path of the application file
which was compiled last.
3. Click [Download].
4. Turn OFF the controller and then turn it back ON.
If the “Reset Robot Controller” option is selected, the controller
automatically restarts when the download completes.
Fig. 5-6: Online Download Window

5-10 169286-1CD 63 of 85
169286-1CD

MotoPlus SDK for Visual 5 Debugging


Studio 5.5 Development Support Tools for YRC1000 and YRC1000micro

5.5.8 Application Property List


Acquires and displays the application properties. The following properties
can be displayed.
• Application name
• Application version
• Application file size
• Task name
• Task executing priority

5.5.8.1 Tool Operating Procedure:


• Using Development PC: select “M+ App Property List” from the
“Tools” menu in Visual Studio.
• Using Programming Pendant: select {MotoPlus APL} > {MotoPlus
Monitor}. Then choose {Application Property List}.
Fig. 5-7: Application Property List Window

5.5.8.2 How to Set Application Information


The following code example demonstrates how to set the Application
Information data.

5-11 169286-1CD 64 of 85
169286-1CD
MotoPlus SDK for Visual 5 Debugging
Studio 5.5 Development Support Tools for YRC1000 and YRC1000micro

Fig. 5-8: Setting the Application Information

5.5.8.3 Setting Procedures


1. Set the application name and the version by using
mpApplicationInfoNotify(). Use the MotoPlus reference manual for
details on mpApplicationInfoNotify().
2. Set the task name by using mpTaskPropNameSet().

5-12 169286-1CD 65 of 85
169286-1CD

MotoPlus SDK for Visual 5 Debugging


Studio 5.5 Development Support Tools for YRC1000 and YRC1000micro

mpTaskPropNameSet
Set the task name to be displayed in the Application Property List.

 Syntax
int mpTaskPropNameSet(
int taskId,
char* name
);

 Argument
[taskId]
Specify the task ID that is returned by using mpCreateTask().
[name]
Specify the task name. For the task name, use a maximum of 32
characters.

 Return value
0: Normal end
-1: Error

NOTICE
When the information is not set, the default setting value is displayed.

5-13 169286-1CD 66 of 85
169286-1CD
MotoPlus SDK for Visual 5 Debugging
Studio 5.5 Development Support Tools for YRC1000 and YRC1000micro

5.5.9 Port Debug


The Port Debug tool measures code execution, similar to an oscilloscope
function. The data for this function is set using special MotoPlus API
functions for debugging (mpDebugPortXXXX).

No. Name Details


1 Time Division Shows the unit [ms/div] of the time axis
(the horizontal axis).
2 Port 0 - Port 4 Shows the measuring port. Any name can be
set by using the debug port API
(for details, refer to section 5.5.9.3 “Port
Debug”).
3 Graph Area Shows the measuring data. Displays the time
which is set in the Time Range.
4 Org Position Optional for measuring.
Sets the home position of the measuring data.
(For details refer to section 5.5.9.2 “Port
Debug”.)
5 Time Range Sets the displaying time [ms] for measuring
data.
6 Port Number Sets the number of the measuring port.
7 Trigger Optional for measuring.
Measures by applying the trigger.
(For details refer to chapter 5.5.9.2.)
8 Robot Controller The controller to use this function
9 Measure Time Optional for measuring.
Measures the time.
(For details refer to chapter 5.5.9.2.)
10 Accumulate Optional for measuring.
Accumulates the measuring data.
(For details refer to chapter 5.5.9.2.)
11 Start (Stop) Starts/stops the measuring.
12 Save Image / Save CSV Saves the measuring data.
13 Status Bar Shows the operating status.
14 Close Port Debug exits.

5-14 169286-1CD 67 of 85
169286-1CD

MotoPlus SDK for Visual 5 Debugging


Studio 5.5 Development Support Tools for YRC1000 and YRC1000micro

5.5.9.1 Measuring Procedures


From the “Tools” menu in Visual Studio, select “M+ Port Debug”.
This function can also be used on programming pendant. Select
{MotoPlus APL} > {MotoPlus Monitor}. Then choose {Port Debug}.
1. Set the measuring conditions.
Time Range Sets the displaying time [ms] for measuring data.
Port Number Specify the number of the measuring port.
2. Press {Start} to start measuring in Port Debug. After starting, switch
{Start} to {Stop}. Press {Stop} to finish measuring.
Fig. 5-9: Port Debug Window

5.5.9.2 Optional for Measuring


Trigger If the Trigger is enabled, data is only displayed when
the trigger conditions are satisfied.
Set the port number and trigger conditions to apply the
trigger. The trigger conditions are shown below.
Up Detects the rising edge.
Down Detects the falling edge.
Up&DownDetects both edges, rising and falling.
Level Detects exceeding of the threshold level.
Fig. 5-10: Trigger

5-15 169286-1CD 68 of 85
169286-1CD
MotoPlus SDK for Visual 5 Debugging
Studio 5.5 Development Support Tools for YRC1000 and YRC1000micro

Org Position Adjusts the display of the home position of the


measuring data.
Depending on the adjustment of the home position, the
displays differ as shown below.
(When the trigger is “UP”)
Fig. 5-11: Home Position

Measure Time When this option is enabled, two cursors display for
measuring a time lapse in the captured data.
When adjusting the position of the cursors, any time
can be measured.
Fig. 5-12: Measure Time

Accumulate Accumulates the measuring data. When this option


is enabled, all measuring data is drawn by
overlapping. The example below shows when the
option is enabled. (Trigger is Up.) The deviation of
the timing when the port is turned to 0 is caused by
the deviation of the position of the rising edge.
Fig. 5-13: Accumulate

5-16 169286-1CD 69 of 85
169286-1CD

MotoPlus SDK for Visual 5 Debugging


Studio 5.5 Development Support Tools for YRC1000 and YRC1000micro

Save Image / CSV The measuring results are saved as an image file or a
CSV file.
For Visual Studio, specify the destination to save and the
file name, and then press the save button.
For MotoPlus Monitor, specify the external memory
device to save to, and then press the save button.
The results are saved in the root folder of the selected
external memory device.
The name of the image file is
“PortDebugImageYYYYMMDD_HHMMSS.bmp”.
The name of the CSV file is
“PortDebugImageYYYYMMDD_HHMMSS.csv”.
YYYYMMDD_HHMMSS indicates the time stamp when
saving (Year/Month/Date/Hour/Minute/Second).

5.5.9.3 Registering Data for the Port Debug Function


Before using the debug port function, it is necessary to execute
mpDebugPortNameSet() once in the application.
The number of ports which are available is 5. It is possible to set values
from 0 to 100 for each port.
Fig. 5-14: How to Implement Port Debug

5-17 169286-1CD 70 of 85
169286-1CD
MotoPlus SDK for Visual 5 Debugging
Studio 5.5 Development Support Tools for YRC1000 and YRC1000micro

5.5.9.4 Debug Port APIs

mpDebugPortInit
Initializes the debug port for the port debug function. Before using the port,
it is necessary to execute it once.

 Syntax
int mpDebugPortInit(
int portNo,
char* name
);

 Argument
[portNo]
Specify the port number from 0 to 4.
[name]
Specifies the name of the debug port. The port name which is specified in
this step is displayed in the window of the port debug. For the port name,
use a maximum of 32 characters.

 Return value
0: Normal end
-1: Error

mpDebugPortHigh
Sets the output level of the debug port to High.

 Syntax
int mpDebugPortHigh(
int portNo,
);

 Argument
[portNo]
Specify the port number from 0 to 4.

 Return value
0: Normal end
-1: Error

5-18 169286-1CD 71 of 85
169286-1CD

MotoPlus SDK for Visual 5 Debugging


Studio 5.5 Development Support Tools for YRC1000 and YRC1000micro

mpDebugPortLow
Sets the output level of the debug port to Low.

 Syntax
int mpDebugPortLow(
int portNo
);

 Argument
[portNo]
Specify the port number from 0 to 4.

 Return value
0: Normal end
-1: Error

mpDebugPortLevelSet
Sets the output level of the debug port to a specified value.

 Syntax
int mpDebugPortLevelSet(
int portNo,
int level
);

 Argument
[portNo]
Specify the port number from 0 to 4.
[level]
Specify the output level. The valid settable range is 0 to 100.

 Return value
0: Normal end
-1: Error

5-19 169286-1CD 72 of 85
169286-1CD
MotoPlus SDK for Visual 5 Debugging
Studio 5.5 Development Support Tools for YRC1000 and YRC1000micro

5.5.10 Copy Protection


This function allows the developer to provide copy protection to the
application. The application will only run on an authorized controller.

Copy protection procedures are shown below.


1. (Developer) Write the protection activation process in the application
source.
2. (End User) Acquire the serial file from the controller to use the
application.
3. (Developer) Create a protection key from the acquired serial file.
4. (End User) Load the created protection key to the controller.

When protection of the application is enabled, the protection key is


checked before starting the application. When the key is unauthorized or
the key does not exist, the application does not start.

5.5.10.1 Protection Activation


Add the following function (mpCopyProtectionActive()) in the source file of
the application. If this function returns ON, the protection is enabled. If this
function returns OFF, the protection is disabled.
If this function is not added to the source code, protection is disabled.

long mpCopyProtectionActive( void )


{
return ( ON ); // ON: Activate protection, OFF: Inactivate protection
}

5-20 169286-1CD 73 of 85
169286-1CD

MotoPlus SDK for Visual 5 Debugging


Studio 5.5 Development Support Tools for YRC1000 and YRC1000micro

5.5.10.2 Acquiring the Serial File (MotoPlus Monitor)


Acquires the serial file from the controller.
1. Select {Protection Key} in MotoPlus Monitor.
2. Select the Memory Device to save the serial file.
3. Press {Save}.

The serial file (MPSERIAL.DAT) is saved in the root folder of the selected
memory device.
Fig. 5-15: Serial File Acquisition Window

5-21 169286-1CD 74 of 85
169286-1CD
MotoPlus SDK for Visual 5 Debugging
Studio 5.5 Development Support Tools for YRC1000 and YRC1000micro

5.5.10.3 Generating the Protection Key


Generate the protection key from the acquired serial file.
1. Open the project of the application by using Visual Studio, and build once.
2. Select “M+ Protection Key” from the “Tools” menu.
3. Press {Open}, and select the acquired serial file (MPSERIAL.DAT).
4. Press {Generate}.

The key file (application name.KEY) is generated in the same folder as the
OUT file of the application.
Fig. 5-16: Protection Key Generation Window

NOTICE
• The protection key cannot be generated if the project of the
application does not exist.
• The protection key cannot be generated if the project of the
application is not built.

5-22 169286-1CD 75 of 85
169286-1CD

MotoPlus SDK for Visual 5 Debugging


Studio 5.5 Development Support Tools for YRC1000 and YRC1000micro

5.5.10.4 Loading the Protection Key (MotoPlus Monitor)


Load the protection key to the controller.
1. Save the protection key file to the root folder of the memory device,
and then insert the memory device into the programming pendant.
2. Select {Protection Key} in MotoPlus Monitor.
3. Select the memory device which the protection key is saved to.
4. Press {Open}.
5. The key file list on the memory device appears. Select the key file to
load.
6. Press {Load}.
The protection key loads from the memory device to the controller. The
application which is created in section 5.5.10.1 “Copy Protection” can be
used. Copy protection procedures are complete.
Fig. 5-17: Protection Key Download Window

5-23 169286-1CD 76 of 85
169286-1CD
MotoPlus SDK for Visual 6 Alarm List
Studio

6 Alarm List

Alarm Number Alarm Name Subcode Meaning


1020 MOTOPLUS APPLICATION 1 Too many MotoPlus applications (.out files) are
LOAD ERROR loaded in the controller.
2 The MotoPlus application is too large. (Available
memory area is 2 Mbyte.)
3 Failed to open the directory.
4 Load failure (Failed to open the file.)
5 Load failure (Undefined symbol) (You declared an
external function or variable that was never
defined in the system)
6 Load failure (Others: application overloaded)
(Verify that your .out file has been compiled for
the correct robot controller)
7 Failed to initialize the API library.
8 No user root task.
9 Failed to create the user root task.
10 Failed to create RAM-Disk.
4478 MM TASK NO RESPONSE The process requested from the MotoPlus
(MotoPlus) application to the MM task was not completed
within the specified time.
4479 MOTOPLUS MM TASK The man-machine task does not run for 3
WATCHDOG ERROR seconds or more.

6-1 169286-1CD 77 of 85
169286-1CD

MotoPlus SDK for Visual 7 Advanced mpBuilder Usage


Studio 7.1 Visual Studio MakeFile Project

7 Advanced mpBuilder Usage


mpBuilder is the compile system utilized by MotoPlus for Visual Studio.
This section describes the advanced usage for the build system. This
should only be modified by experienced developers.

7.1 Visual Studio MakeFile Project


When select a MotoPlus Project from the New Project menu, the wizard is
creating a Visual Studio MakeFile project. This project type in Visual
Studio issues a command line call to a custom compiler.
The Build Command Line command can be viewed under {Project} >
{Properties} > {Configuration properties} > {NMake}.

The default build command is:


mpbuilder.exe -c $(Configuration) -p “$(ProjectDir)\”
-n “$(ProjectName)” -b “$(OutDir)\” -o build

The default clean command is:


mpbuilder.exe -c $(Configuration) -p “$(ProjectDir)\”
-n “$(ProjectName)” -b “$(OutDir)\” -o clean

The fields $(…) are Microsoft macros for MSBuild. These are documented
online on the MSDN website.

7-1 169286-1CD 78 of 85
169286-1CD
MotoPlus SDK for Visual 7 Advanced mpBuilder Usage
Studio 7.1 Visual Studio MakeFile Project

Using the $(…) syntax, you can also insert any system Environment
Variables into the command line. Example: $(MP_VS_Install) evaluates to
the MotoPlus installation directory.
The default commands do not use all of the available command-line
arguments for mpBuilder. Here is a list of all available arguments:
• -c, --controller Required. Target YASKAWA robot
controller platform. DX100, DX200, FS100 and YRC1000
• -p, --projectFolder Required. Root folder for the MotoPlus
project.
• -n, --projectName Required. Name of your MotoPlus project.
• -o, --operation Required. Build operation to perform.
'build' = Build Project. 'clean' = Delete output files. 'rebuild' = Clean
then build.
• -b, --binaryLocation Path to the output binary. If this is not
specified, it will default to [ProjectDir]\output.
• -i, --includeDir This is the path to the standard include-
directory for your MotoPlus API header files. If this is not specified, it
will default to [InstallDir]\[Controller]\inc.
• -e, --encoding The character encoding of your source
files. Example: “US-ASCII” or “UTF-8”. A list of supported encodings
can be found in the Microsoft documentation for EncodingInfo.Name
• -l, --library 'Y' if you are building a MotoPlus Library
file. 'N' if you are building a .out Executable module.
• -d, --dontParseErrors 'T' (true) if you want to see the unmodified
error/warning strings returned from the compiler. Otherwise, they will
be parsed and formated to be recognized by Visual Studio.
• -v, --visualStudioVersion Must be specified for VS2008 (v=9).
Ignored for Visual Studio 2010 - 2013.

7-2 169286-1CD 79 of 85
169286-1CD

MotoPlus SDK for Visual 7 Advanced mpBuilder Usage


Studio 7.2 Compiler Arguments

7.2 Compiler Arguments


The specific compiler will vary based on which robot controller is selected.
The proper one is selected based on the arguments specified for
mpBuilder. Regardless of which controller is selected, the final compiler
will be part of the GCC build system.

The arguments for the GCC build system are specified in the .mps files,
which are automatically added to your MotoPlus for Visual Studio project.

NOTICE
Please see the GCC documentation for all available arguments to the
build system.

7.2.1 CompilerArguments.mps
This file is used when compiling source files into binary objects. This can
be used to control many variables in the build system.
• Project-wide DEFINE statements
• Enable/disable particular errors and warnings
• Compiler code optimization (not recommended)
• Directories to search for include-files for the project
There are macros which can be placed in the .mps file which will be
recognized by mpBuilder and resolved prior to calling the compiler.
• ~ProjectDir~ : This will resolved to the temporary directory where the
source files are copied and converted to ASCII encoding at build
time.
• ~IncludeDir~ : This is the standard include directory to search for
MotoPlus API header files. If the -i argument is specified to
mpBuilder.exe, then this macro will resolve to the value of the -i
argument. Otherwise, it will default to
[MP_VS_Install]\[Controller]\inc
• ~FilePath~ : This will resolve to the full path of the source file being
compiled. Please note that it will point to the ASCII copy of the
source file, located in the temp directory.
• ~OutputPath~ : This will resolve to the full path of the compiled
object file which is the output from the compiler.

7.2.2 LinkerArguments.mps
This file is used when linking the compiled object files into a single binary
executable/library. There are macros which can be placed in this .mps file
which will be recognized by mpBuilder and resolved prior to calling the
compiler.
• ~FileList~ : This is the list of compiled object files which will be
combined into the final output file.
• ~OutputPath~ : This is the full path to the final output file.

7-3 169286-1CD 80 of 85
169286-1CD
MotoPlus SDK for Visual Appendix A
Studio A.1 Compatibility with Windows 8/10

Appendix A

NOTICE
The following compatibility issues are not applicable to MotoPlus SDK
v1.1.0 or higher. The fixes below are only required for older versions.

A.1 Compatibility with Windows 8/10


(MotoPlus SDK v1.0.7 and Lower)
The MotoPlus compiler is compatible with Windows 8. However, additional
steps must be performed to make this work properly.

A.1.1 Symptom of Problem:


If a console window appears when attempting to build your MotoPlus
application, then the compiler will not properly display Errors/Warnings
inside of Visual Studio.
Fig. A-1: Compiler Not Displaying Errors/Warning Inside of Visual Studio

A-1 169286-1CD 81 of 85
169286-1CD

MotoPlus SDK for Visual Appendix A


Studio A.1 Compatibility with Windows 8/10

 Solution:
You must explicitly run Visual Studio as Administrator each time you
launch the application. Please note that simply having an Administrator
user account is not sufficient. When launching Visual Studio, you must
right-click and select {Run as Administrator}.

NOTICE
You must perform this every time you want to open Visual Studio.

Fig. A-2: From Metro Interface

A-2 169286-1CD 82 of 85
169286-1CD
MotoPlus SDK for Visual Appendix A
Studio A.1 Compatibility with Windows 8/10

Fig. A-3: From Desktop Interface

A-3 169286-1CD 83 of 85
169286-1CD

MotoPlus SDK for Visual Appendix B


Studio B.1 Compatibility with Visual Studio 2015

Appendix B

B.1 Compatibility with Visual Studio 2015

CAUTION
• Update Visual Studio 2015 to “update 2” or greater.
Not updating Visual Studio to “update 2” or greater will prevent
compiling MotoPlus apps.

MotoPlus SDK for Visual Studio is compatible with Visual Studio 2015.

B.1.1 Symptom of Problem:


If you see the error message “The filename, directory name, or volume
label syntax is incorrect,” then you must update Visual Studio.

B-1 169286-1CD 84 of 85
MOTOPLUS SDK
FOR VISUAL STUDIO
USER’S MANUAL
FOR: DX100, DX200, FS1000, YRC1000, AND YRC1000micro

For inquiries or after-sales service on this product, contact


your local YASKAWA representative as shown below.

YASKAWA ELECTRIC CORPORATION


2-1 Kurosakishiroishi, Yahatanishi-ku, Kitakyushu, 806-0004, Japan
Phone: +81-93-645-7703 Fax: +81-93-645-7802
http://www.yaskawa.co.jp
YASKAWA AMERICA, INC. (MOTOMAN ROBOTICS DIVISION)
100 Automation Way, Miamisburg, OH 45342, U.S.A.
Phone: +1-937-847-6200 Fax: +1-937-847-6277
http://www.motoman.com
YASKAWA EUROPE GmbH (ROBOTICS DIVISION)
Yaskawastrasse 1, 85391, Allershausen, Germany
Phone: +49-8166-90-100 Fax: +49-8166-90-103
http://www.yaskawa.eu.com
YASKAWA NORDIC AB
Verkstadsgatan 2, Box 504, SE-385 25 Torsas, Sweden
Phone: +46-480-417-800 Fax: +46-486-414-10
http://www.yaskawa.se
YASKAWA ELECTRIC (CHINA) CO., LTD.
22F, One Corporate Avenue, No.222 Hubin Road, Huangpu District, Shanghai 200021, China
Phone: +86-21-5385-2200 Fax: +86-21-5385-3299
http://www.yaskawa.com.cn
YASKAWA SHOUGANG ROBOT CO., LTD.
No.7 Yongchang North Road, Beijing E&T Development Area, Beijing 100076, China
Phone: +86-10-6788-2858 Fax: +86-10-6788-2878
http://www.ysr-motoman.cn
YASKAWA ELECTRIC KOREA CORPORATION
35F, Three IFC, 10 Gukjegeumyung-ro, Yeongdeungpo-gu, Seoul, 07326, Korea
Phone: +82-2-784-7844 Fax: +82-2-784-8495
http://www.yaskawa.co.kr
YASKAWA ELECTRIC TAIWAN CORPORATION
12F, No.207, Sec. 3, Beishin Rd., Shindian District, New Taipei City 23143, Taiwan
Phone: +886-2-8913-1333 Fax: +886-2-8913-1513
http://www.yaskawa.com.tw
YASKAWA ASIA PACIFIC PTE. LTD.
30A Kallang Place, #06-01, 339213, Singapore
Phone: +65-6282-3003 Fax: +65-6289-3003
http://www.yaskawa.com.sg
YASKAWA ELECTRIC (THAILAND) CO., LTD.
59, 1st-5th Floor, Flourish Building, Soi Ratchadapisek 18, Ratchadapisek Road, Huaykwang,
Bangkok 10310, Thailand
Phone: +66-2-017-0099 Fax: +66-2-017-0199
http://www.yaskawa.co.th
PT. YASKAWA ELECTRIC INDONESIA
Secure Building-Gedung B Lantai Dasar & Lantai 1 Jl. Raya Protokol Halim Perdanakusuma,
Jakarta 13610, Indonesia
Phone: +62-21-2982-6470 Fax: +62-21-2982-6471
http://www.yaskawa.co.id
YASKAWA INDIA PRIVATE LIMITED (ROBOTICS DIVISION)
#426, Udyog Vihar Phase-IV, Gurgaon, Haryana 122016, India
Phone: +91-124-475-8500 Fax: +91-124-475-8542
http://www.yaskawaindia.in

Specifications are subject to change without notice


for ongoing product modifications and improvements.

MANUAL NO.

169286-1CD 7 85 of 85

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy