You are on page 1of 20

Modern Robotics Inc.

Core Device Discovery

Version 2.0.0 April 11, 2017


Core Device Discovery Modern Robotics, Inc

Contents

1. Document Control................................................................................................................... 3
2. Description .............................................................................................................................. 4
3. Application Download/Installation ......................................................................................... 5
4. Application Usage ................................................................................................................... 6
5. Core Power Distribution Module ............................................................................................ 8
6. Core Device Interface Module Advanced Options ................................................................. 9
6.1. On Board LEDs ....................................................................................................... 10
6.2. PWM Outputs ........................................................................................................ 10
6.3. Digital I2C Ports ..................................................................................................... 11
6.3.1 Address List ............................................................................................................. 11
6.3.2 I2C Commands ........................................................................................................ 11
6.3.3 Change I2C Address ................................................................................................ 11
6.4. Analog/Digital Inputs............................................................................................. 12
6.5. Analog Outputs ..................................................................................................... 12
7. Core Legacy Module Advanced Options ............................................................................... 13
7.1. On Board LEDs ....................................................................................................... 14
7.2. Sensor Ports .......................................................................................................... 14
8. Core Motor Controller Advanced Options ............................................................................ 15
8.1. Current Status ....................................................................................................... 16
8.2. Motor Controls ...................................................................................................... 16
8.2.1 Constant Power Mode ............................................................................................ 16
8.2.2 Constant Speed Mode ............................................................................................ 17
8.2.3 Run to Positon Mode .............................................................................................. 17
8.2.4 Motor Type ............................................................................................................. 17
9. Core Servo Controller Advanced Options ............................................................................. 18
9.1. Standard Servo Use ............................................................................................... 19
9.2. Extended Range Servo Use ................................................................................... 19
10. Firmware Upgrade via Core Device Discovery ................................................................... 20
10.1. Upgrade a Module................................................................................................. 20

Version 2.0.0 Page 2


Core Device Discovery Modern Robotics, Inc

1. Document Control

Revision History
Version Date Description By
1.0.1 10/27/15 Initial Document Modern Robotics
2.0.0 4/11/17 Rewrote and reorganized document Modern Robotics

© Modern Robotics. Inc 2017

This document is published by Modern Robotics, Inc. No part of this document may be copied,
published in print or shared online or otherwise publically released without the express written
consent of Modern Robotics, Inc.

Specifications subject to change without notice.

Modern Robotics, Inc


13335 SW 124th St
Miami, FL 33186

Phone: (786)393-6886
Email: support@modernroboticsinc.com
Web: www.modernroboticsinc.com

Version 2.0.0 Page 3


Core Device Discovery Modern Robotics, Inc

2. Description

The Core Device Discovery utility allows you to retrieve module information and serial
numbers, test connectivity and most functions of each module from your PC or Mac.
Modules that can be tested by this are;

• Core Servo Controller


• Core Motor Controller
• Core Legacy Module
• Core Device Interface Module
• Core Power Distribution Module (Indirectly. This will not appear in device window.)

It is recommended that the Core Power Distribution Module be used in line with the
connected controllers and computer.

Version 2.0.0 Page 4


Core Device Discovery Modern Robotics, Inc

3. Application Download/Installation

Step 1

Download the Core Device Discovery executable (.exe) by going


to http://modernroboticsinc.com/coredevicediscovery.

Step 2

Core Device Discovery will be in your downloads folder. We recommend moving the
program to your documents folder.
Core Device Discovery can be used from any location on your computer including
external hard drives.

Step3

Double click the executable file to run the application. When the program is open, it will
match the photo below.

Version 2.0.0 Page 5


Core Device Discovery Modern Robotics, Inc

4. Application Usage

Connect your Core Power Distribution Module to your computer. Your computer will see
the Core Power Distribution Module as a generic USB hub. Connect additional modules to
the Core Power Distribution Module one at a time to allow for the modules to be
discovered and install the proper device drivers.

Windows: A popup window will appear in the tool tray indicating that device has drivers,
been assigned a COM port and is ready for use.

If your computer does not install the drivers, the modules will not be found by the
application. To fix this, go to http://www.ftdichip.com/Drivers/VCP.htm and select the
“setup executable” option in the comments column. Installing this driver will allow the
modules to communicate with the computer.

Mac: In most cases, each module connected will be assigned a “tty” USB port within a short
time of connecting. Once the tty number is assigned, the module is ready for use.

Click the “Refresh” button to update the device windows with the currently connected
controller.

Version 2.0.0 Page 6


Core Device Discovery Modern Robotics, Inc

NOTE: Servo and Motor Controllers must be connected to 12V with the red LED turned ON
to be read properly by the Core Device Discovery.

Clicking “Save Output” will save valuable information about the controllers you have
connected to a text file. If you are having trouble with a module or controller, then save a
text file and email it to support@modernroboticsinc.com with a detailed description of the
problem and testing steps.

Indicator Legend:
= No Module/Controller Detected
= Core Control Module Found
= Unknown Device OR Servo/Motor w/o 12V power
= Module/Controller Require Reprogramming

White Button – Selected


Mode

Dark Button – Available


Mode

Light Button - Commands

Indicator
COM Port
Firmware Version
Manufacturer
Green – Input value is good
FTDI Serial Number
Red – Input value is
Device Name incorrect or out of range
Upgrade Firmware Gray – Input disabled, Read
only
Advanced Testing Options

Version 2.0.0 Page 7


Core Device Discovery Modern Robotics, Inc

5. Core Power Distribution Module

The Core Power Distribution Module is equipped with four LEDs as status indicators. Under
normal operation, all four LEDs should be illuminated with a power supply and USB host
connected.

USB
Enable
3.3 V

5V
12 V

12 V – Indicates a 12 V supply is connected and the power switch is turned on.


5 V – Indicates the 5 V circuit is working properly.
3.3 V – Indicated the 3.3 V circuit is working properly.
USB Enable – Indicates a USB host is connected to the Mini USB port.

Note: The Core Power Distribution Module does not appear in the Core Device Discovery
device windows. The seven device windows represent the seven ports of the Core Power
Distribution Module in an arbitrary order.

For more information and testing instructions for the Core Power Distribution Module, go
to http://modernroboticsedu.com/mod/page/view.php?id=64.

Version 2.0.0 Page 8


Core Device Discovery Modern Robotics, Inc

6. Core Device Interface Module Advanced Options

The Core Device Interface Module has one green LED to indicate a connection to a 5 V USB
host. The Core Device Interface Module can be directly connected to the computer via USB
or connected through your Core Power Distribution Module.
For more information and testing instructions for the Core Device Interface Module, go to
http://modernroboticsedu.com/mod/page/view.php?id=67.
5V

Click the “Advanced” button on the home screen to open the advanced window.

Version 2.0.0 Page 9


Core Device Discovery Modern Robotics, Inc

6.1. On Board LEDs

The Red and Blue on board LEDs can be controlled by checking or unchecking the boxes.

6.2. PWM Outputs

There are two ports available for generating pulse width modulation. There are two
parameters that must be set to generate a PWM output. The “On Time” parameter is a
measure from rising edge of the wave form to the next falling edge. The “Period” parameter
is a measure of the rising edge of the wave form to the next rising edge.

Version 2.0.0 Page 10


Core Device Discovery Modern Robotics, Inc

6.3. Digital I2C Ports

The Digital I2C Ports window is


split into three sections; Address
List, I2C Commands and Change
Address. If the number is preceded
by “0x” then that is a hexadecimal
number, otherwise it is a decimal
number.

6.3.1 Address List

The Address List displays all connected and properly working I2C sensors and their I2C
Address. Third party sensors may not be displayed the same

6.3.2 I2C Commands

The I2C Commands section is used for reading data from and writing data to an I2C
sensor. The Address field is the I2C address of a sensor that was found in the Address
List. The Register field is the location within the sensor where data can be read or
written. For more information on the register layouts and usage of Modern Robotics I2C
sensor, go to
http://modernroboticsinc.com/Content/Images/uploaded/Sensors/Sensor%20Documen
tation.pdf. Performing a read of a register location must be done by pressing the READ
button or checking the Poll Read checkbox, which will then display the register value in
the Value field. Writing to a register requires a value to be typed into the Value field.
The value is written to the register within the sensor when the WRITE button is pressed.

6.3.3 Change I2C Address

The Change Address section is very important when using two of the same I2C sensors
on the same I2C bus. For both sensors to work they must have different I2C address,
otherwise they will both communicate at the same time causing garbage data to be
returned. With only one of the sensors connected, type the current I2C address into the
Current field. The name of the sensor will appear in place of “…” if a Modern Robotics
Sensor is detected. Then the new address must be typed into the New Addr field. The
new address must range from 0x10 – 0xEE and be an even number. Once the Change
Address button is pressed, the Address List section will update with the new I2C address
of the sensor.

Version 2.0.0 Page 11


Core Device Discovery Modern Robotics, Inc

6.4. Analog/Digital Inputs

The Analog and Digital inputs display the raw value returned by the sensor. The Analog
sensors will return values ranging from 0 – 255. The Digital sensors will return a 0 or 1. A
connected sensor to the analog or digital ports will be read automatically and displayed.

6.5. Analog Outputs

The Analog Output feature generates a voltage with


either DC current or AC current represented by a sine,
square or triangle wave form. There is a 4mA max
current per Analog Output port. Once the values are
typed in, the Update Analog Out must be pressed to
apply the values to the port.

Mode Voltage Range Frequency Range


Voltage Output (DC) -4 V – +4V N/A
Sine Wave Output (AC) 0 – ±4 V (8 V p–p) 1 Hz – 5000 Hz
Square Wave Output (AC) 0 – ±4 V (8 V p–p) 1 Hz – 5000 Hz
Triangle Wave Output (AC) 0 – ±4 V (8 V p–p) 1 Hz – 5000 Hz

Version 2.0.0 Page 12


Core Device Discovery Modern Robotics, Inc

7. Core Legacy Module Advanced Options

The Core Legacy Module has one red LED to indicate a connection to a 5 V USB host. The
Core Legacy Module can be directly connected to the computer via USB or connected
through your Core Power Distribution Module.
For more information and testing instructions for the Core Legacy Module, go to
http://modernroboticsedu.com/mod/page/view.php?id=68.

5V

Click the “Advanced” button on the home screen to open the advanced window.

Version 2.0.0 Page 13


Core Device Discovery Modern Robotics, Inc

7.1. On Board LEDs

There are four on board LEDs that can be controlled by checking or unchecking the boxes.

7.2. Sensor Ports

The Core Legacy Module has six sensor ports to connect HiTechnic sensors and controllers.
To perform an analog read, connect a legacy analog or digital sensor to the sensor port on
the Core Legacy Module. A single read can be made by clicking the READ button or
constantly poll a reading by checking the Poll Read checkbox. The returned reading will
appear in the Analog Reading field.
To communicated via I2C a legacy I2C sensor or legacy motor/servo controller must first be
connected. If the number is preceded by “0x” then that is a hexadecimal number, otherwise
it is a decimal number. Click the I2C Address button to show the address of the attached I2C
device. Enter the register location per the device’s register map into the Register Location
field. Performing a read of a register location must be done by pressing the READ button or
checking the Poll Read checkbox, which will then display the register value in the Value
field. Writing to a register requires a value to be typed into the Value field. The value is
written to the register within the sensor when the WRITE button is pressed.

Note: Port S4 and S5 can enable 9 V for use with the legacy NXT Ultrasonic Sensor. (Coming
soon to Core Device Discovery)

Version 2.0.0 Page 14


Core Device Discovery Modern Robotics, Inc

8. Core Motor Controller Advanced Options

The Core Motor Controller has one red LED to indicate a connection to a 12 V power. The
Core Motor Controller can be directly connected to the computer via USB or connected
through your Core Power Distribution Module. There must be 12 V power applied with the
red LED on when testing or the controller will not be detected properly by the computer.
For more information and testing instructions for the Core Motor Controller, go to
http://modernroboticsedu.com/mod/lesson/view.php?id=76.

5V

Click the “Advanced” button on the home screen to open the advanced window.

Version 2.0.0 Page 15


Core Device Discovery Modern Robotics, Inc

8.1. Current Status

The status window displays vital information about the status of the motor on the port and
the battery voltage.

8.2. Motor Controls

The Motor Control window contains all the tools necessary to fully test a Core Motor
Controller and motor. There are three operating modes a motor port can be set to;
Constant Power, Constant Speed and Run to Position. There are also two stopping modes,
Brake and Float. Brake will halt the motor when a power of zero is applied and hold at the
current encoder position. This means that in Brake mode at a power of zero the motor shaft
cannot be rotated. Float will cause the motors to coast to a stop and will not hold the
encoder position. This means that in Float mode at a power of zero the motor shaft can
continue to rotate.

User Defined Power User Defined Encoder Position


Current Applied Power Current Encoder Position
Motor Type and PID/Ratio Set PID/Ratio (Gray if set)

Currently in Power Mode


Brake/Float Mode
Resent Current Encoder Value Apply user defined power
and encoder position

8.2.1 Constant Power Mode

Constant Motor Power Mode applies the same amount of power to the motor
regardless of the load on the motor. Motor power ranges from -100 – +100.

Version 2.0.0 Page 16


Core Device Discovery Modern Robotics, Inc

8.2.2 Constant Speed Mode

Constant Motor Speed Mode applies a power to the motor to maintain the same
rotational speed. Therefore, when applying ±100% power in Constant Speed Mode the
resulting power will be 85% of the maximum power. This is necessary if the load
becomes greater on the motor and requires more power to be applied to maintain a
constant speed.

8.2.3 Run to Positon Mode

Run to Position Mode will run the motor until


the encoder reaches the user defined encoder
position. When using run to position a power of
100% the power applied will be 85% of the
maximum. This is necessary if the load
becomes greater on the motor and requires
more power to be applied to maintain constant
encoder counts on both motors. Enter in the
power and encoder target values before
clicking Update.

When using this mode, always apply a positive power. The motor will turn in the
direction according to the encoder target position.

8.2.4 Motor Type

The Core Motor Controller supports a few types of motors including Matrix, AndyMark
and Tetrix with support for other motors in the future. Selecting a motor type changes
the P, I, D and Ratio parameters which are vital to using the motor with encoders. The
PID and Ratio parameter were found through extensive testing on special equipment.
Once a motor type it set, it will remain set until it is changed by the user.

Version 2.0.0 Page 17


Core Device Discovery Modern Robotics, Inc

9. Core Servo Controller Advanced Options

The Core Servo Controller has one red LED to indicate a connection to a 12 V power. The
Core Servo Controller can be directly connected to the computer via USB or connected
through your Core Power Distribution Module. There must be 12 V power applied with the
red LED on when testing or the controller will not be detected properly by the computer.
For more information and testing instructions for the Core Servo Controller, go to
http://modernroboticsedu.com/mod/lesson/view.php?id=78.

5V

Click the “Advanced” button on the home screen to open the advanced window.

Version 2.0.0 Page 18


Core Device Discovery Modern Robotics, Inc

9.1. Standard Servo Use

The standard Core Servo Controller range is from 0.75 ms to 2.25 ms per port when a value
of 0 or 255 is applied respectively.
The Servo Enable box must be pressed for the servos to move according to the entry value.
Once the servos are enabled, a user entry value can be entered in the green box from 0 –
255. Once the value is set to the desired target value, click Update Values to apply the
changes to the Core Servo Controller. Clicking Update Values will update the values of all six
servo ports simultaneously.

9.2. Extended Range Servo Use

The extended Core Servo Controller range is from 0.5 ms – 2.5 ms per port when a value of
0 or 255 is applied respectively. This will allow for a greater operating range on the selected
servo port. Take great caution when using the extended servo range as a valid entry of 0 –
255 could exceed the mechanical limit of the servo causing irreversible damage to the
servo.
Once a servo port is put in extended range mode, it will remain there until the user changes
it back to standard range mode. This mode can only be changed using Core Device
Discovery and not the Android SDK or Windows DLL.

Version 2.0.0 Page 19


Core Device Discovery Modern Robotics, Inc

10. Firmware Upgrade via Core Device Discovery

The Core Device Interface, Core Legacy Module, Core Motor Controller and Core Servo
Controller all support firmware upgrades from home with version 2.0 or higher. If any
modules are on version 1.5 or 1.6, they must be sent back to the Modern Robotics offices
for update and inspection. Refer to http://modernroboticsinc.com/firmware-update for
more information on sending modules in for update.
All modules can be both upgraded and downgraded to any available firmware.

10.1. Upgrade a Module

To upgrade a module, click the Upgrade button found in the device window. The most
current version of the firmware will be selected by default. Click the dropdown menu to
select a different firmware version to load on the module.

Click Program Device to start programming the selected firmware on to the module. Once
complete, the current version will be updated and the module will be ready for use.
The home screen will need to be refreshed to show the updated firmware number.

Version 2.0.0 Page 20

You might also like