EZ Controller (IR-CT01)
User Manual
EZ Controller User Manual_EN_V.1.0
INDEX
01 Overview
3
1.1. Precautions------------------------------3
1.2. Proper Storage---------------------------3
02 Function & Operation
4
2.1. Function----------------------------------4
2.2. Mode Selection---------------------------5
2.3. External Switch and Signal Input---------5
2.4. Parts Pin Map-----------------------------6
03 Example of Actuator Control through
Arduino IDE
3.1. Overview---------------------------------7
3.2. Ex. –2 Position Control ------------------7
3.3. Ex. – Toggle Position---------------------9
3.4. Ex. – Manual Position--------------------10
3.5. Ex. – Basic Function---------------------11
3.6. Ex. – Extra IO(1)--------------------------12
2.7. Ex. – Extra IO(2)--------------------------13
3.8. Ex. – External Communication-------- --14
3.9. Ex. – Mode Selection --------------------15
3.10. Ex. – Stroke Limit-----------------------16
2
7
EZ Controller User Manual_EN_V.1.0
1 Overview
Arduino-based EZ Controller is a controller to easily operate / test mightyZAP linear servo actuators.
The features of EZ Controller are as follows.
Operate the linear actuator simply and easily through various input devices on the board by using the built-in
basic program.
Various motion programming is available by example program provided from us or by your own coding via
Arduino.
Connectable with various external accessories. (External switch, etc.)
No need for a separate circuitry to control the mightyZAP linear actuator. Also, for safety, it is equipped with
power protection circuits for prevention of reverse power, over-current, and static electricity.
1.1 Precautions
The following precautions require special attention when using, so be sure to read them carefully. Please note that
warranty will be void for problems caused by failure to comply with the following.
1.
2.
3.
4.
5.
6.
7.
8.
9.
Do not apply excessive force when connecting products. Also, do not apply excessive force to the components
or the pins on the board. It may cause malfunction.
Be advised that it may cause a short circuit when connecting
To prevent short circuit, be sure to
power to the board on the metal plate that is not insulated. Be
install the enclosed plastic support
sure to attach the enclosed plastic support to the board before
before use!
use. (See the picture on the right)
Since the voltage applied to the EZ controller is directly applied to
the connected actuator, check the operating voltage range of the
actuator and check the polarity when connecting external power.
Ex) If user connects the actuator whose input voltage is 7.4V (D7
or L7 series) to the board, and accidently connects 12V power to
the board may cause the damage of actuator.
When connecting the actuator to the board, make sure to check the polarity of the pins.
It may cause motor or actuator PC board damage.
Use the appropriate connector to prevent damage due to incorrect insertion.
Apply proper input to each terminal.
Make sure proper signal voltage and pay attention to the proper wiring between power and signal terminal.
Do not overturn the variable resistance knob when setting the start and end points of the rod.
Keep the product away from fire, water, dust and oil and keep the product out of reach of children.
This product is designed for indoor use. Please refrain from using outdoors.
1.2 Proper Storage
Do not use or store the product in the following extreme environments. It may cause malfunction or product damage.
High temperature environment over 60℃ or low temperature below minus 20℃
Direct sunlight or near fire
Hot, humid and dusty places
Severe vibration condition
Places that can cause static electricity
3
EZ Controller User Manual_EN_V.1.0
2 Function & Operation
2.1 Function
○
①
●
○
②
●
⑭
④
: For position setting, use ③ and ④
⑧
⑨
⑩
⑦
⑱
⑥
⑦
⑧
⑨
⑩
⑪
⑫
⑬
⑭
⑮
⑮
⑯
⑰
⑤
: Position command by external switch or external signal.
It is same function as ⑨,⑩ push button.
③
⑤
⑥
EZ Controller Components and Description
① A Position External switch input (○: +, ●:-)
⑬
⑪
② B Position External switch input (○: +, ●:-)
⑫
③ “A” Position setting V/R : “A” position setting by
adjusting variable resistor. (A position command made by ①
or ⑨)
④ “B” Position setting V/R : “B” position setting by
adjusting variable resistor. (B position command made by ②
or ⑩)
PC connection micro USB
Set the positions of the A and B points by adjusting the blue V/R ③ (A
terminal : Arduino Sketch
position) and ④ (B position) respectively.
download/Serial
-Clockwise:- (actuator retraction direction)
communication
-Counterclockwise: + (actuator extension direction)
Reset Switch: Controller
reset
For convenience, it is recommended to set A to minimum position and B
12V main power input
to maximum position as shown below.
terminal
-A point (part ③): Turn clockwise to set the minimum position
-B point (part ④): Turn counterclockwise to set the maximum position
Mode selection Switch
Please note that the minimum and maximum positions of A and B may
A Position push button
be reversed and changed depending on user settings.
Switch
B Position push button Switch
MCU F/W download connector(ICSP) : User manipulation prohibited
Arduino I/O 핀(Digital:3 , Analog:3 / GND, 12V, SIG)
Internal power terminal(GND / 3.3V / 5V / 12V) : power output terminal internally used.
[Current Limit of each terminal]
- 3.3V : ~150mA / 5V : ~ 900 mA / 12V : Depending on Input Voltage Source
PWM port
TTL port
⑯ RS-485 port
⑰
Linear Potentiometer for manual position
⑱
User external communication terminal (Bluetooth : TX / RX / GND / 3.3V)
4
EZ Controller User Manual_EN_V.1.0
2.2 Mode Selection
Test the operation of the actuator using the basic operation program built into the EZ Controller.
The basic operation program consists of Manual Mode, Position Select Mode, and Position Toggle Mode.
(The mode switch only affects the basic operation program.)
Manual
Position Select
Position Toggle
Manual Mode : Connect the actuator, move the Mode switch(⑧) to the lowest position, set it to Manual Mode.
Then, operate actuator by change the position of the linear potentiometer(⑰).
Position Select Mode : Connect the actuator, move the Mode switch(⑧) to the middle position, set it to Position
Select Mode. Adjust the blue position setting variable resistors (A:③ &B:④) to set A and B Position respectively,
and then press the white push buttons(A:⑨& B:⑩) in the center to operate the actuator as Point A and Point B.
Position Toggle Mode : Connect the actuator, move the Mode switch⑧) to the top, set it to Position Toggle Mode.
Adjust the blue position setting variable resistors (A:③ &B:④) to set A and B Position respectively, and then
press any of the white push buttons(⑨or⑩) in the center to operate the actuator to point A and B.
2.3 External Switch
A/B position external switch input & External signal input (Pic. ①,②)
Connect external switches or apply a voltage level signal for position command. It is the same function
as the white push button switches (⑨, ⑩). Only the position command can be made, and each position
setting should be made through the blue variable resistors (③ and ④).
1) External Switch Connection
: Connect the both ends of the terminal with switches to input the signal. (Short circuit at both ends
of the terminal)
5
EZ Controller User Manual_EN_V.1.0
2) External Signal Input
: To recognize the signal in the second hole of each terminal, apply 3.3~12V level signal.
2.4 Part Pinmap
-
Parts No : Part number described on the manual Page 4.
-
Pin Name : Arduino(Leonardo) I/O Pin
Part No
Pin Name
Purpose
Part No
Pin Name
Purpose
①,⑨
I/O10
GPIO– A Signal
⑫
A0,A2,A3
GPIO - Analog
②,⑩
D3
GPIO– B Signal
⑭
D5
GPIO - PWM
③
A4
Analog–A Variable resistor
⑮,⑯
D0,D1
For TTL,RS485 Communication
④
A5
Analog–B Variable resistor
⑰⑰
A1
Analog -Potentiometer
⑤
Serial
USB Serial, Sketch download
⑱⑱
IO8,IO9
Software Serial
⑧
D4,IO12,D6
GPIO – Slide SW
⑫
D7,IO11,IO13
GPIO - Digital
○
⑪
①
●
○
②
●
⑦
⑬
⑭
③
⑤
⑥
⑫
④
⑧
⑨
⑮
⑩
⑯
⑰
⑱
6
EZ Controller User Manual_EN_V.1.0
3
Example of Actuator Control
through Arduino IDE
Actuator control via the Arduino IDE's data communication protocol (RS-485 or TTL). This is for the advanced users of
Arduino who want to control actuators more freely through data communication of Arduino.
3.1 Overview
Here are Arduino examples to control mightyZAP through EZ Controller. The examples are for serial data
communication (TTL or RS-485 communication) and do not support PWM communication.
The EZ Controller is designed based on Arduino Leonardo, and the Arduino API provided by us is based on Arduino
Leonardo / Uno. For detailed description of each parameter function, please refer to the mightyZAP user manual.
3.2. Example - 2 Position Control (RS-485/TTL)
The EZ controller contains two variable resistors (Figures 3 and 4) that can assign two positional points and two buttons
(Figures 9 and 10) that commands to reach the assigned points. (Alternatively, it is also possible to reach the assigned
points with an external physical switch or external voltage signal (Figure 1 or 2). For detailed information about
external switch, see 2.3 External switches on page5.
Here is the example of moving to 2 assigned positions which is set by position setting variable resistors (#3&4) through
2 switches (#9&10). Select [Example] - [IRROBOT_EZ Controller] - [EZ]–[EZ Controller_2Positions]
[Description]
-
Mode switch (#8) can be positioned anywhere. (Mode switch only works in the built-in basic program)
-
Supply power to the input power terminal(#7).
polarity.(GND and VCC)
-
Carefully insert the connector suitable for the selected communication. (#14 PWM / #15 TTL / #16 RS-485)
(For PWM connector (#14), refer to the page 6 to make sure correct polarity.)
-
Set two positional points (position A & B) by turning variable resistors (#3&4). (Clockwise turn – Retracting
direction(short stroke) / Counter clockwise turn- Extension direction(long stroke))
-
Press A, B button (#9, 10 ) to make positional command to the assigned goal positions.
-
It is also possible to reach the assigned points with an external switch or external voltage signal (#1 or 2). For
detailed information about external switch, see 2.3 External switches on page5.
Make sure correct input voltage(7.4V or 12V) and correct
7
EZ Controller User Manual_EN_V.1.0
-
[Program Description]
Example of setting two points with the value of a
variable resistor and moving them to the corresponding
point when the buttons of A and B are pressed.
Mapping for PWM value
Short : 900
Long : 2100
Read the variable resistor values of Position A and
Position B and assign values to “A_stroke_val” and
“B_stroke_val” variables respectively.
The map () function maps the variable resistor's resistor
value to the actuator's position range.
* In case not using a variable resistor,,
A_stroke_val = 100;
B_stroke_val
=
3600;
It has a scale of 4096 and enters a value between 0 and
4096.
Tester.MightyZAP.goalPosition() : TTL,485 control
Tester.servof_CH1.writeMicroseconds() : PWM control
8
EZ Controller User Manual_EN_V.1.0
3.3. Example - TogglePosition
This is an example of inverting 2 Positions designated by 1 toggling button.
Select [Example] - [IRROBOT_EZController] - [EZ]– [EasyControl_TogglePosition]
[Description]
-
Mode switch (#8) can be positioned anywhere. (Mode switch only works in the built-in basic program)
-
Supply power to the input power terminal (#7).
polarity.(GND and VCC)
-
Carefully insert the connector suitable for the selected communication. (#14 PWM / #15 TTL / #16 RS-485)
(For PWM connector (#14), refer to the page 6 to make sure correct polarity.)
-
Set two positional points (position A & B) by turning variable resistors (#3&4). (Clockwise turn – Retracting
direction(short stroke) / Counter clockwise turn- Extension direction(long stroke))
-
Press A or B button (#9 or 10 ) to make positional command to the assigned goal positions. (Either button
between A and B)
-
It is also possible to reach the assigned points with an external switch or external voltage signal (#1 or 2). For
detailed information about external switch, see 2.3 External switches on page5.
Make sure correct input voltage(7.4V or 12V) and correct
[Program Description]
Example in which the two points set as variable
resistors are reversed from point A to point B and
point B to point A when the A or B button is pressed.
When the A or B button is pressed, the tg_flag value
declared as bool is inverted, and when the value is 1, it
moves to the A point, and when it is 0, it moves to the
B point.
9
EZ Controller User Manual_EN_V.1.0
3.4. Example –Manual Position
Moving the position of the actuator by moving distance of the linear potentiometer.
Select [Example] - [IRROBOT_EZController] - [EZ]– [EasyControl_MPosition]
[Description]
-
Mode switch (#8) can be positioned anywhere. (Mode switch only works in the built-in basic program)
-
Supply power to the input power terminal (#7).
polarity.(GND and VCC)
-
Carefully insert the connector suitable for the selected communication. (#14 PWM / #15 TTL / #16 RS-485)
(For PWM connector (#14), refer to the page 6 to make sure correct polarity.)
-
By adjusting the variable linear potentiometer (#17), user is able to operate actuator. In the manual mode, it is not
Make sure correct input voltage(7.4V or 12V) and correct
affected by the setting of the position setting variable resistor (# 3 & 4), and as the linear potentiometer moves,
the actuator position can be controlled in the full stroke section.
[Program Description]
Actuator position operation after reading
Potentiometer value with “Manual_position_val “variable
10
EZ Controller User Manual_EN_V.1.0
3.5. Example –Basic Function
Switching control mode and controlling actuator through Mode selection slide switch.
Select [Example] - [IRROBOT_EZController] - [EZ]-[EasyControl_BasicFunction] 선택
[Description]
-
Supply power to the input power terminal (#7).
polarity.(GND and VCC)
Make sure correct input voltage(7.4V or 12V) and correct
-
Carefully insert the connector suitable for the selected communication. (#14 PWM / #15 TTL / #16 RS-485)
(For PWM connector (#14), refer to the page 6 to make sure correct polarity.)
-
Switch the mode with the mode slide switch (#8) to operate the actuator.
1) Mode0 : Manual Control (Switch Bottom)
2) Mode1 : 2 Position Control (Switch Center)
3) Mode2 : Toggle Control (Switch Top)
-
When operating in Mode1 (Manual Control), note that the position
setting variable resistor values by # 3 and 4 are set to the limit value
of the movable range of the variable linear potentiometer (# 17).
[Program Description]
The bottom, middle, and top of the Slide Switch
are defined as MODE_0, MODE_1, and MODE_2 in
each order.
Debouncing by variable counting
Sw_status : Recognizing if the switch is pressed
sw_cnt: When SW is On, recognizing after debouncing
cnt: When SW is off, recognizing after determining
“off operation”.
MODE_0 : Manual Position(Potentiometer)
MODE_1 : Position Select(A, B Position)
MODE_2 : Position Toggle(A,B Position)
11
EZ Controller User Manual_EN_V.1.0
3.6. Example –Extra IO(1)
Controlling the actuator by receiving the input of the digital IO pin.
Select [Example] - [IRROBOT_EZController] - [EZ]–[EasyControl_ExtIO]
[Description]
-
Mode switch (#8) can be positioned anywhere. (Mode switch only works in the built-in basic program)
-
Supply power to the input power terminal (#7).
polarity.(GND and VCC)
-
Carefully insert the connector suitable for the selected communication. (#14 PWM / #15 TTL / #16 RS-485)
(For PWM connector (#14), refer to the page 6 to make sure correct polarity.)
The left three of the upper header pins (# 12) are assigned for digital terminals, and the first & second pins from
the left can be used.
-
Make sure correct input voltage(7.4V or 12V) and correct
-
The signal terminal is the lowest pin of the 3 pins and the pin has a signal level of 5V. (See picture below)
(Active Low / 5V : High Signal /
0V : Low Signal)
-
Set the two points for position setting in the same way as the previous method through the two variable resistors
on the left (#3 and 4).
-
When a low signal is applied to the first pin, the actuator moves to the set point A,
When a low signal is applied to the second pin, the actuator moves to the set B point.
[Program Description]
●
GND
●
5V
●
SIG
The left three pins are Arduino's Digital IO, the right three
pins are Analog IO.
Among Digital IO (7,11,13), 7 and 11 IO are declared as input.
When 5V signal is applied to pin 7, the actuator moves to
the set point A. When 5V signal is applied to pin 11 the
actuator moves to the set point B.
12
EZ Controller User Manual_EN_V.1.0
3.7. Example -Extra IO(2)
Controlling the actuator by receiving the input of an external sensor to the analog IO pin.
Select [Example] - [IRROBOT_EZController] - [EZ]–[EasyControl_Sensing]
[Description]
-
Mode switch (#8) can be positioned anywhere. (Mode switch only works in the built-in basic program)
-
Supply power to the input power terminal (#7).
polarity.(GND and VCC)
-
Carefully insert the connector suitable for the selected communication. (#14 PWM / #15 TTL / #16 RS-485)
(For PWM connector (#14), refer to the page 6 to make sure correct polarity.)
-
Among the header pins (# 12), the right three are analog terminals, and these three pins are used for Extra IO.
(See picture below)
-
Connect the sensor to read the analog value to the pin according to the purpose.
-
Actuator moves according to the sensor value.
ex) CDS => brighter forward, darker backward
Make sure correct input voltage(7.4V or 12V) and correct
[Program Description]
●
GND
●
5V
●
SIG
In the library, analog pins A0, A2, A3 are defined as VR_4,
VR_5, VR_6.
Declare the pin you want to use with a defined name, or
directly declare matched analog pin.
13
EZ Controller User Manual_EN_V.1.0
3.8. Example –External Communication
Controlling the actuator through external communication by the Bluetooth port.
Select [Example] - [IRROBOT_EZController] - [EZ]–[EasyControl_ExtCom]
[Description]
-
Mode switch (#8) can be positioned anywhere. (Mode switch only works in the built-in basic program)
-
Supply power to the input power terminal (#7).
polarity.(GND and VCC)
-
Carefully insert the connector suitable for the selected communication. (#14 PWM / #15 TTL / #16 RS-485)
-
(For PWM connector (#14), refer to the page 6 to make sure correct polarity.)
-
There is a port (# 18) for external communication at the bottom right, and connects the device to the pin
Make sure correct input voltage(7.4V or 12V) and correct
according to the pin arrayal.
-
If you press the A(B) button in the example, ‘A(B)’ is sent as an ASCII value.
-
When the board receives ‘A’ as an ASCII value, the actuator moves to the A point set the same as before,
Similarly, when the ASCII value 'B' is received, the actuator moves to the set point B.
[Program Description]
Since it is based on Bluetooth, the
communication voltage level is 3.3V.
On the Arduino, IO8 and IO9 pins are declared as RX
and TX respectively.
Communication data is received byte by byte through
“ExtComData_Listen ()” function.
Set baud rate of serial monitor with Serial.begin () function
The Sw_Func () function sends ASCII code values
corresponding to A and B respectively, and the
ExtComData_Func () function moves the actuator to the
position corresponding to the received ASCII code value.
Check the data which is sent and received by the
Sw_func () function and ExtComData_Func () function
on the serial monitor.
14
EZ Controller User Manual_EN_V.1.0
3.9. Example – Mode Selection
Example for the mode setting that can be operated according to the value of the mode selection switch (Fig# 8).
Select [Example] - [IRROBOT_EZController] - [EZ]–[EasyControl _ModeSelect]
[Description]
In the same way as [Basic Function], the operation can be different according to the position of Mode selection
switch(#8), and the operation can be assigned for each mode.
[Program Description]
Index values for each mode are defined sequentially.
1 : when the mode switch is at the bottom
2 : mode switch at the middle / 3 : at the top
Tester.ModeSelect(int mode1, int mode2. int mode3, int sw);
mode1 : operation when sw value is 1
mode 2 : operation when sw value is 2
mode3 : operation when sw value is 3
sw : Mode value set by mode switch
15
EZ Controller User Manual_EN_V.1.0
3.10. Example –Stroke Limit
Example which can set the max/min limit of stroke with 2 x position setting variable resistors(fig#3&4).
Select [Example] - [IRROBOT_EZController] - [EZ]–[EasyControl _StrokeLimit]
[Description]
-
Mode switch (#8) can be positioned anywhere. (Mode switch only works in the built-in basic program)
-
Supply power to the input power terminal (#7).
polarity.(GND and VCC)
-
Carefully insert the connector suitable for the selected communication. (#14 PWM / #15 TTL / #16 RS-485)
Make sure correct input voltage(7.4V or 12V) and correct
-
(For PWM connector (#14), refer to the page 6 to make sure correct polarity.)
-
Set the position limit by turning the variable resistors (Fig# 3 and 4) that adjust the position of the max and min
points of the stroke in the clockwise (-) and counterclockwise (+) directions. Clockwise direction is for retraction
(short stroke), Counterclockwise direction is for extension(long stroke).
-
Operate actuator by adjusting linear potentiometer (Fig#17).
Operating position will be affected by position setting V/R(#3&4), and even if the potentiometer is moved, the
position is controlled only within the section set by the variable resistor.
[Program Description]
Determine the potentiometer value so that linear
potentiometer does not exceed the set range.
Regardless of V/R(#3&4) location, large value sets
max limit and small value sets min limit.
16