Developer(s) | Logic Design Inc. |
---|---|
Stable release | V7.1 / January 2021 |
Operating system | Windows (Windows 7, Windows 8, Windows 10) |
Type | Robotics circuit simulation |
License | Proprietary |
Website | www |
RoboLogix is a robotics simulator which uses a physics engine to emulate robotics applications. [1] The advantages of using robotics simulation tools such as RoboLogix are that they save time in the design of robotics applications and they can also increase the level of safety associated with robotic equipment since various "what if" scenarios can be tried and tested before the system is activated. [2] RoboLogix provides a platform to teach, test, run, and debug programs that have been written using a five-axis industrial robot in a range of applications and functions. These applications include pick-and-place, palletizing, welding, and painting.
RoboLogix was developed by Colin Simpson and John (Bud) Skinner. It is primarily intended as an educational resource, and is used by high schools, colleges, and universities [3] to provide laboratory simulation of industrial robots. Some institutions, such as George Brown College use RoboLogix as part of an online robotics distance education program. The simulation software allows for verification of the robot's reaching ability, travel ranges and collisions. This type of simulation software provides an increased level of reliability in the planning process and program development as well as reducing the overall completion/commissioning time.
The ability to preview the behavior of a robotic system in a virtual world allows for a variety of mechanisms, devices, configurations and controllers to be tried and tested before being applied to a "real world" system. RoboLogix has the capacity of real-time simulation of the motion of an industrial robot using both geometric modeling and kinematics modeling. [4]
RoboLogix enables programmers to write their own robot programs and use sensors such as video cameras, which are used for obtaining the desired position of the robot end effector. In addition, a teach pendant control panel is included with the simulator that allows the user to command the robot to pick up a tracked object and return it to a home location through jogged commands or pre-programmed positions.
The RoboLogix control panel consists of both robot control functions as well as environment control functions such as conveyor system controls, on-off hard-wired control, etc. The control panel allows the user to command the robot to pick up a tracked object and return it to a home location through jogged commands or pre-programmed positions. With robotic systems in general, angular position movements are commonly used for large (course) motion and linear position movements are often used for smaller (fine) increments. [5] There are several command instructions on the control panel such as Reset, Home, Setup and Zero which are used to automatically set the robot to a specific position for calibration or realignment.
RoboLogix provides 12 viewpoints, or camera angles for a given robot work envelope. These viewpoints are accessed by the twelve CAM keys and allow for the viewing from a variety of angles and perspectives. By using these camera viewpoints, the user can move around in a 3D animated environment in much the same way they would in the real-world. One of the camera views is from the robot's end effector, which allows for the real-time visualization and positioning of the end effector (gripper) as it approaches the workpiece.
Like most robot programming languages, RoboLogix programs consist of data objects and program flow. The data objects reside in registers and the program flow represents the list of instructions, or instruction set, that is used to program the robot. RoboLogix program language is a type of scripting language that is used to control the software application.
Programming languages are generally designed for building data structures and algorithms from scratch, while scripting languages are intended more for connecting, or gluing, components and instructions together. [6] Consequently, the RoboLogix instruction set is a streamlined list of program commands that are used to simplify the programming process and provide rapid application development.
The RoboLogix instruction set contains 16 commands, which are usually written as a program on a line-by-line basis. These commands are used to instruct the robot to perform tasks such as moving to a specific location, picking up an object, executing a subroutine, waiting, etc. One of the more popular commands in the instruction set is the IF instruction, which compares numerical values located in two registers. If a register has a value that is greater than (>), less than (<), greater than/equal to (>=), less than/equal to (<=), equal to (=), or not equal to (<>) another register, it will execute the next line in the program if the condition is true. The IF command is often used with the JMP LBL instruction to control program execution.
All instruction set information is stored in registers, which are data locations capable of holding variable numeric values. There are two main types of registers used by RoboLogix: position registers and variable registers. Position registers contain both the linear and angular data point coordinates and include axis (joint) information for A1, A2, A3, etc. and for X, Y, Z linear, or Cartesian coordinates. There are also 32 variable registers which can be used for holding instruction set data such as position comparisons and time-delay information. In addition to position registers and variable registers, some robot software programs also have palletizing registers, which are used to manage the position of the stack point in palletizing applications.
Palletizing is one of the more popular applications for robots, and is accomplished by combining a series of commands into a palletizing routine. A RoboLogix palletizing routine consists of five program instructions, or lines. The first instruction is the Palletize instruction, which is followed by a linear motion instruction to move to the stack point. The stack point is the top-center of the workpiece, and a group of stack points forms a stacking pattern, as shown in the adjacent image. The first stack point in a stacking pattern is located at (1,1,1) (row, column, layer) and is incremented each time the palletizing routine is executed.
A computer program is a sequence or set of instructions in a programming language for a computer to execute. It is one component of software, which also includes documentation and other intangible components.
A simulation is an imitative representation of a process or system that could exist in the real world. In this broad sense, simulation can often be used interchangeably with model. Sometimes a clear distinction between the two terms is made, in which simulations require the use of models; the model represents the key characteristics or behaviors of the selected system or process, whereas the simulation represents the evolution of the model over time. Another way to distinguish between the terms is to define simulation as experimentation with the help of a model. This definition includes time-independent simulations. Often, computers are used to execute the simulation.
An industrial robot is a robot system used for manufacturing. Industrial robots are automated, programmable and capable of movement on three or more axes.
An instruction set simulator (ISS) is a simulation model, usually coded in a high-level programming language, which mimics the behavior of a mainframe or microprocessor by "reading" instructions and maintaining internal variables which represent the processor's registers.
Robot software is the set of coded commands or instructions that tell a mechanical device and electronic system, known together as a robot, what tasks to perform. Robot software is used to perform autonomous tasks. Many software systems and frameworks have been proposed to make programming robots easier.
Microsoft Robotics Developer Studio is a discontinued Windows-based environment for robot control and simulation that was aimed at academic, hobbyist, and commercial developers and handled a wide variety of robot hardware. It requires a Microsoft Windows 7 operating system or later.
A computer architecture simulator is a program that simulates the execution of computer architecture.
CircuitLogix is a software electronic circuit simulator which uses PSpice to simulate thousands of electronic devices, models, and circuits. CircuitLogix supports analog, digital, and mixed-signal circuits, and its SPICE simulation gives accurate real-world results. The graphic user interface allows students to quickly and easily draw, modify and combine analog and digital circuit diagrams. CircuitLogix was first launched in 2005, and its popularity has grown quickly since that time. In 2012, it reached the milestone of 250,000 licensed users, and became the first electronics simulation product to have a global installed base of a quarter-million customers in over 100 countries.
Colin Simpson is a Canadian entrepreneur, software developer, and the author of seven textbooks, including the bestseller Principles of Electronics. With over 500,000 of his textbooks in print, Dr. Simpson is considered as an expert in the teaching of electronics and electronics simulation technology. He has won numerous awards including the Award of Excellence from the Association of Canadian Community Colleges (ACCC), the TVOntario Lifelong Learning Challenge Award, and the Codie award from the Software Publishers Association. Simpson holds two patents in electronics laboratory simulation and control systems technology, and is recognized as an authority on distance education and the integration of laboratory simulation software. He has been interviewed by the CBC, PBS, CTV, TVOntario, The Globe and Mail, Toronto Star, Chicago Tribune, and has lectured at universities around the world. Simpson has a Ph.D. in Electrical Engineering from the University of Hawaii and a Doctorate of Letters from Nipissing University.
A robotics simulator is a simulator used to create an application for a physical robot without depending on the physical machine, thus saving cost and time. In some case, such applications can be transferred onto a physical robot without modification.
anyKode Marilou is a modeling and simulation environment for mobile robots, humanoids, articulated arms and parallel robots operating in real-world conditions that respect the laws of physics. This robotics suite is used in research centers and industry for various projects like humanoid architectures, wheeled and multi legged vehicles, and multi-robot systems (Multi-agents).
In computing, an emulator is hardware or software that enables one computer system to behave like another computer system. An emulator typically enables the host system to run software or use peripheral devices designed for the guest system. Emulation refers to the ability of a computer program in an electronic device to emulate another program or device.
Robotics is the branch of technology that deals with the design, construction, operation, structural disposition, manufacture and application of robots. Robotics is related to the sciences of electronics, engineering, mechanics, and software.
SimSpark is a generic simulation system for various multiagent simulations. It supports developing physical simulations for AI and robotics research with an open-source application framework. It is commonly used in academic research and education.
The following outline is provided as an overview of and topical guide to robotics:
The RoboCup 3D Simulated Soccer League allows software agents to control humanoid robots to compete against one another in a realistic simulation of the rules and physics of a game of soccer. The platform strives to reproduce the software programming challenges faced when building real physical robots for this purpose. In doing so, it helps research towards the RoboCup Federation's goal of developing a team of fully autonomous humanoid robots that can win against the human world soccer champion team in 2050.
MikroSim is an educational computer program for hardware-non-specific explanation of the general functioning and behaviour of a virtual processor, running on the Microsoft Windows operating system. Devices like miniaturized calculators, microcontroller, microprocessors, and computer can be explained on custom-developed instruction code on a register transfer level controlled by sequences of micro instructions (microcode). Based on this it is possible to develop an instruction set to control a virtual application board at higher level of abstraction.
RoboDK is an offline programming and simulation software for industrial robots. The simulation software allows you to program robots outside the production environment, eliminating production downtime caused by shop floor programming.
Asynchronous multi-body framework (AMBF) is an open-source 3D versatile simulator for robots developed in April 2019. This multi-body framework provides a real-time dynamic simulation of multi-bodies such as robots, free bodies, and multi-link puzzles, paired with real-time haptic interaction with various input devices. The framework integrates a real surgeon master console, haptic or not, to control simulated robots in real-time. This feature results in the simulator being used in real-time training applications for surgical and non-surgical tasks. It offers the possibility to interact with soft bodies to simulate surgical tasks where tissues are subject to deformations. It also provides a Python Client to interact easily with the simulated bodies and train neural networks on real-time data with in-loop simulation. It includes a wide range of robots, grippers, sensors, puzzles, and soft bodies. Each simulated object is represented as an afObject; likewise, the simulation world is represented as an afWorld. Both utilize two communication interfaces: state and command. Through the State command, the object can send data outside the simulation environment, while the Command allows to apply commands to the underlying afObject.