---
title: 6-axis F/T Sensor (AFT200, CAN)
description: 6-axis Force/Torque Sensor(AFT200)
---

[Skip to content](https://help.aidinrobotics.co.kr/en/6-axis-force-torque-sensor-can#main-content)

- [English](https://help.aidinrobotics.co.kr/en/6-axis-force-torque-sensor-can)
- [한국어 - 대한민국 (Korean - South Korea)](https://help.aidinrobotics.co.kr/6축-힘/토크-센서-can)

English

Show submenu for translations

[![에이딘로보틱스 로고](https://help.aidinrobotics.co.kr/hs-fs/hubfs/%EB%A1%9C%EA%B3%A02%EC%97%B4_grey@2x.png?width=120&height=40&name=%EB%A1%9C%EA%B3%A02%EC%97%B4_grey@2x.png)](https://help.aidinrobotics.co.kr/?hsLang=en)

- [Full Manual](https://help.aidinrobotics.co.kr/en/full-manual)
- [Install Guide](https://help.aidinrobotics.co.kr/en/install-guide)
- [Contact Us](https://www.aidinrobotics.co.kr/en/contact)

Open main navigation

Close main navigation

- [Full Manual](https://help.aidinrobotics.co.kr/en/full-manual)
- [Install Guide](https://help.aidinrobotics.co.kr/en/install-guide)
- [Contact Us](https://www.aidinrobotics.co.kr/en/contact)
- - [English](https://help.aidinrobotics.co.kr/en/6-axis-force-torque-sensor-can)
    - [한국어 - 대한민국 (Korean - South Korea)](https://help.aidinrobotics.co.kr/6축-힘/토크-센서-can)

  English
  
  Show submenu for translations
- [Official Site](https://www.aidinrobotics.co.kr/en)

[Official Site](https://www.aidinrobotics.co.kr/en)

 How can we help you?

- There are no suggestions because the search field is empty.

1. [AIDIN ROBOTICS Knowledge Base](https://help.aidinrobotics.co.kr/en?hsLang=en)
2. [Full Manual](https://help.aidinrobotics.co.kr/en/full-manual?hsLang=en)

June 11, 2026

# 6-axis F/T Sensor (AFT200, CAN)

## ✅ revision date: 2026.06.11

![](https://help.aidinrobotics.co.kr/hs-fs/hubfs/image-png-Jan-23-2026-07-56-20-2138-AM.png?width=4&height=2&name=image-png-Jan-23-2026-07-56-20-2138-AM.png)![Untitled-69](https://help.aidinrobotics.co.kr/hs-fs/hubfs/Untitled-69.png?width=670&height=721&name=Untitled-69.png)

 

### FOREWORD

Thank you for purchasing our Force Torque sensor. This manual contains the information necessary for the correct use of the AIDIN ROBOTICS AFT200-D80 sensor. Please carefully read this manual when using this software. Please note that the basic performance of the product will not be exhibited when the robot system is used out of conditions. This manual describes possible dangers and consequences using Force Torque sensor. Be sure to comply with safety precautions written in this manual to use safety and correctly.

### NOTICE

This manual Do **NOT** allow copy, reproduction or share without authorization of AIDIN ROBOTICS. Please notify us any errors in this manual or the provided instructions.

### MANUFACTURER

AIDIN ROBOTICS

### SAFETY PRECAUTIONS

Installation of Force Torque sensor **MUST** be performed by qualified personnel in accordance with national and local codes. Please carefully read this manual when using this software.

### WARNING & CAUTION

🚫 This symbol indicates that a danger of possible serious injury or death exists if the associated instructions are not followed properly.

⚠️ This symbol indicates that a danger of possible harm to people or physical damage to equipment and facilities exists if the associated instructions are not followed properly.

✅ AFT200-D80-C sensor from AIDIN ROBOTICS meets CE-certified “A Class”

### 1. Introduction

#### 1.1 Smart 6-axis Force Torque Sensor, AFT200-D80

![image-png](https://help.aidinrobotics.co.kr/hs-fs/hubfs/image-png.png?width=670&height=377&name=image-png.png)

#### 1.2 Key features

- Smart 6-axis force/torque sensor
- All-in-one sensor (No additional amplifier)
- Digital output communications (CAN)
- Easy installation and data collection
- Grippers, robot hands, collaborative robot, industrial robot

#### 1.3 Specs.

| Index | Unit | Value |
| --- | --- | --- |
| Operating voltage | VDC | 5 |
| Max. safe excitation voltage | VDC | 12 |
| Nominal force range | N | 200 |
| Nominal torque range | Nm | 15 |
| Limit force (Fxyz) | N | 300 |
| Limit torque | Nm | 22.5 |
| Force Resolution | N | 0.15 |
| Torque Resolution | Nm | 0.015 |
| Force Noise-free resolution (STD) | N | 0.4 |
| Torque Noise-free resolution (STD) | Nm | 0.025 |
| Maximum sample rate | Hz | 1,000 |
| Dimensions | mm | D80 x H21.5 |
| IP rating |  | IP56 |
| Operating temperature |  | 10-50℃ |

#### 1.4 Flyer

[\[AIDIN ROBOTICS\] AFT MINI+AFT200 leaflet(EN, 26.06).pdf](https://help.aidinrobotics.co.kr/hubfs/%EC%97%90%EC%9D%B4%EB%94%98%20%EB%A6%AC%ED%94%8C%EB%A0%9B/%5BAIDIN%20ROBOTICS%5D%20AFT%20MINI+AFT200%20leaflet(EN%2c%2026.06).pdf?hsLang=en)

 

### 2. Installation Guide

#### 2.1 **Basic Components**

- AFT200-D80 x 1 EA
- 3m Cable x 1 EA

![image-png-1](https://help.aidinrobotics.co.kr/hs-fs/hubfs/image-png-1.png?width=670&height=463&name=image-png-1.png)

#### 2.2 Mounting

- **M5 bolt 5.2Nm required for tightening**
- Performance cannot be guaranteed and A/S not possible when disassembling internal/external bolts

![image-png-3](https://help.aidinrobotics.co.kr/hs-fs/hubfs/image-png-3.png?width=670&height=274&name=image-png-3.png)

- Sensor tightening order
  
  ![image-png-2](https://help.aidinrobotics.co.kr/hs-fs/hubfs/image-png-2.png?width=670&height=583&name=image-png-2.png)
- **CAUTION OF CABLE CUTTING AND EXCESS PULLING**
- Secure the sensor line with the robot so that it does not pull as it moves
  
    - Do not fix it to the robot using cable ties, etc., or use cable ties to fix it in a bundle shape like other wires
    - We recommend that you use Velcro to fix it with the robot, and please use Velcro to fix it when fixing it in a bundle form with other lines

💡 Performance CANNOT be guaranteed if not followed to the tightening torque guide.

💡 If the sensor line is not fixed to the robot, the output signal may have a noise due to the pulled by robot

💡 Please check More detail setup guide as follow:

#### 2.3 AXIS & Drawings

![image-png-4](https://help.aidinrobotics.co.kr/hs-fs/hubfs/image-png-4.png?width=670&height=603&name=image-png-4.png)![image-png-Sep-01-2025-12-36-10-5254-AM](https://help.aidinrobotics.co.kr/hs-fs/hubfs/image-png-Sep-01-2025-12-36-10-5254-AM.png?width=670&height=471&name=image-png-Sep-01-2025-12-36-10-5254-AM.png)

Drawing File : 

[AFT200-D80.pdf](https://help.aidinrobotics.co.kr/hubfs/%EC%97%90%EC%9D%B4%EB%94%98%20%EB%8F%84%EB%A9%B4/AFT200_D80_Drawing.pdf?hsLang=en)

**💡 Port Location Notice**

- **EtherCAT** Type model has two ports: **IN** and **OUT**.
- **Ethernet** Type model has one port, located on the **left side**.
- **CAN** Type model has one port, located on the **right side**.

Step File:

[AFT200-D80-C\_배포용.STEP](https://help.aidinrobotics.co.kr/hubfs/%EC%97%90%EC%9D%B4%EB%94%98%20%EC%8A%A4%ED%85%9D%ED%8C%8C%EC%9D%BC/AFT200-D80-C_%EB%B0%B0%ED%8F%AC%EC%9A%A9.STEP.zip?hsLang=en)

 

#### 2.4 Wiring

#### 2.4.1 Pin out

**![image-png-Sep-01-2025-12-40-22-3247-AM](https://help.aidinrobotics.co.kr/hs-fs/hubfs/image-png-Sep-01-2025-12-40-22-3247-AM.png?width=670&height=201&name=image-png-Sep-01-2025-12-40-22-3247-AM.png)![image-png-Sep-01-2025-12-40-36-8418-AM](https://help.aidinrobotics.co.kr/hs-fs/hubfs/image-png-Sep-01-2025-12-40-36-8418-AM.png?width=670&height=194&name=image-png-Sep-01-2025-12-40-36-8418-AM.png)**

#### 2.4.2 Cable open-end

- Cable pin out
  
    - Length: 3m

 

![image-png-Sep-01-2025-12-41-02-2153-AM](https://help.aidinrobotics.co.kr/hs-fs/hubfs/image-png-Sep-01-2025-12-41-02-2153-AM.png?width=331&height=229&name=image-png-Sep-01-2025-12-41-02-2153-AM.png)

- - 5V(VCC) - Orange, Black dot
    - GND - Gray, Black dot
    - CANH- Yellow, Black dot
    - CANL - Pink, Black dot

💡 Other pins are not using

- Connection PCB Installation Guide
  
    - Insert the lines as illustrated below and fasten the bolts on the terminals.
    - Each connection point is indicated on the PCB connection point, and the sequence is as follows:
      
      ![image-png-Sep-01-2025-12-42-08-7517-AM](https://help.aidinrobotics.co.kr/hs-fs/hubfs/image-png-Sep-01-2025-12-42-08-7517-AM.png?width=670&height=241&name=image-png-Sep-01-2025-12-42-08-7517-AM.png)

1. Sensor Connector (Connector section connecting to the sensor)
2. EtherNET Connector (Connector section connecting to the PC)
3. Sensor Connector
   
     1. Upper 2-port terminal block: VCC, GND
     2. Lower 4-port terminal block: VCC, GND, CAN High, CAN Low **(Optional)**

- VCC and GND should be connected to a power supply device providing stable 5V.
- The 9-pin D-sub is connected to the eCAN device.

🚫 We recommend using an approved power supply device.

#### **2.4 Default Data Output Rate**

- The output rate can be changed from 100 Hz to 1000 Hz
- Please refer to the “2.5 Mode setting” below for how to change it

![image-png-Sep-01-2025-12-44-01-9762-AM](https://help.aidinrobotics.co.kr/hs-fs/hubfs/image-png-Sep-01-2025-12-44-01-9762-AM.png?width=382&height=106&name=image-png-Sep-01-2025-12-44-01-9762-AM.png)

#### 2.5 Mode setting

![image-png-Sep-01-2025-12-44-36-6947-AM](https://help.aidinrobotics.co.kr/hs-fs/hubfs/image-png-Sep-01-2025-12-44-36-6947-AM.png?width=670&height=216&name=image-png-Sep-01-2025-12-44-36-6947-AM.png)

💡 To stabilize the sensor signal, it is recommended to have a running time of about **30 minutes.**  
\* Please leave the sensor data on for **at least 10 minutes** before using it

💡 The first 10 minutes of sensor output data can cause data to flow.

##### 2.5.1 MODE SETTINGs

##### CAN ID Setting mode

![image-png-Sep-01-2025-12-47-30-7723-AM](https://help.aidinrobotics.co.kr/hs-fs/hubfs/image-png-Sep-01-2025-12-47-30-7723-AM.png?width=670&height=127&name=image-png-Sep-01-2025-12-47-30-7723-AM.png)

- Data field \[0\] : Current Set ID (Factory Setting 0x01)
- Data field \[2\] : User setting ID for transmit

![image-png-Sep-01-2025-12-47-53-3149-AM](https://help.aidinrobotics.co.kr/hs-fs/hubfs/image-png-Sep-01-2025-12-47-53-3149-AM.png?width=670&height=120&name=image-png-Sep-01-2025-12-47-53-3149-AM.png)

##### Bias Setting mode

![image-png-Sep-01-2025-12-48-47-6892-AM](https://help.aidinrobotics.co.kr/hs-fs/hubfs/image-png-Sep-01-2025-12-48-47-6892-AM.png?width=670&height=127&name=image-png-Sep-01-2025-12-48-47-6892-AM.png)

- Data field \[2\] : 0x00 : Bias setting without temperature compensation (This commend should be used with transmitting mode(without temperature compensation) command)
- Data field \[2\] : 0x01: Bias setting with temperature compensation (This commend should be used with transmitting mode(with temperature compensation) command)

##### Continuous transmitting mode

![image-png-Sep-01-2025-12-49-41-3979-AM](https://help.aidinrobotics.co.kr/hs-fs/hubfs/image-png-Sep-01-2025-12-49-41-3979-AM.png?width=670&height=113&name=image-png-Sep-01-2025-12-49-41-3979-AM.png)

- Data field \[2\] : 0x00 : Transmitting mode without temperature compensation (This commend should be used with Bias setting(without temperature compensation) command)
- Data field \[2\] : 0x01: Transmitting mode with temperature compensation (This commend should be used with Bias setting(with temperature compensation) command)

![image-png-Sep-01-2025-12-50-23-1711-AM](https://help.aidinrobotics.co.kr/hs-fs/hubfs/image-png-Sep-01-2025-12-50-23-1711-AM.png?width=670&height=167&name=image-png-Sep-01-2025-12-50-23-1711-AM.png)

- Fx Output = Force Output \[0\]\*256 + Force Output\[1\]
- Fy Output = Force Output \[2\]\*256 + Force Output\[3\]
- Fz Output = Force Output \[4\]\*256 + Force Output\[5\]
- Force\[N\] = Force Output/100-300

![image-png-Sep-01-2025-12-50-46-8791-AM](https://help.aidinrobotics.co.kr/hs-fs/hubfs/image-png-Sep-01-2025-12-50-46-8791-AM.png?width=670&height=143&name=image-png-Sep-01-2025-12-50-46-8791-AM.png)

- Tx Output = Torque Output \[0\]\*256 + Torque Output\[1\]
- Ty Output = Torque Output \[2\]\*256 + Torque Output\[3\]
- Tz Output = Torque Output \[4\]\*256 + Torque Output\[5\]
- Torque\[Nm\] = Force Output/500-50

##### Sample rate setting mode

![image-png-Sep-01-2025-12-51-19-6788-AM](https://help.aidinrobotics.co.kr/hs-fs/hubfs/image-png-Sep-01-2025-12-51-19-6788-AM.png?width=670&height=158&name=image-png-Sep-01-2025-12-51-19-6788-AM.png)

- Data field \[2\] : Sample rate parameter \[0\]
- Data field \[3\] : Sample rate parameter \[1\]
- Sample rate parameter = Sample rate parameter \[0\] \* 256 + Sample rate parameter \[1\]
- Sample rate = (1,000,000/Sample rate parameter)
  
  ex) 1000Hz, Sample rate parameter \[0\] = 0x03, Sample rate parameter \[1\] = 0xE8
  
  ex) 500Hz, Sample rate parameter \[0\] = 0x07, Sample rate parameter \[1\] = 0xD0
  
  ex) 333Hz, Sample rate parameter \[0\] = 0x0B, Sample rate parameter \[1\] = 0xB8
  
  ex) 200Hz, Sample rate parameter \[0\] = 0x13, Sample rate parameter \[1\] = 0x88
  
  ex) 100Hz, Sample rate parameter \[0\] = 0x27, Sample rate parameter \[1\] = 0x10

##### ID Confirming mode

![image-png-Sep-01-2025-12-51-53-4585-AM](https://help.aidinrobotics.co.kr/hs-fs/hubfs/image-png-Sep-01-2025-12-51-53-4585-AM.png?width=670&height=93&name=image-png-Sep-01-2025-12-51-53-4585-AM.png)

![image-png-Sep-01-2025-12-53-18-3432-AM](https://help.aidinrobotics.co.kr/hs-fs/hubfs/image-png-Sep-01-2025-12-53-18-3432-AM.png?width=670&height=99&name=image-png-Sep-01-2025-12-53-18-3432-AM.png)

##### Factory Reset mode

![image-png-Sep-01-2025-12-53-49-7906-AM](https://help.aidinrobotics.co.kr/hs-fs/hubfs/image-png-Sep-01-2025-12-53-49-7906-AM.png?width=670&height=92&name=image-png-Sep-01-2025-12-53-49-7906-AM.png)

##### 2.5.2 DEVICES

##### USB-to-CAN Device

- You may use a different CAN-enabled board, but use IXXAT's converter to use the sample program

**![image-png-Sep-01-2025-12-55-47-5059-AM](https://help.aidinrobotics.co.kr/hs-fs/hubfs/image-png-Sep-01-2025-12-55-47-5059-AM.png?width=670&height=310&name=image-png-Sep-01-2025-12-55-47-5059-AM.png)**

[USB-to-CAN V2 (ixxat.com)](https://www.ixxat.com/products/products-industrial/can-interfaces/usb-can-interfaces/usb-to-can-v2-professional?ordercode=1.01.0281.12001), **Version used in the manual**: 1.01.0281.11001

[Downloads and Documentation for Ixxat Products](https://www.ixxat.com/technical-support/resources/downloads-and-documentation?ordercode=1.01.0281.12001), **VCI V4** - Windows 11, 10, 8, 7 \[Driver, canAnalyser-Mini, Manuals, LabView and other add-ons\]\*

- Ixxat VCI Setup 4.0.xxx.0.exe
- **VCI V4 check during installation and reboot after installation**

##### **EtherNET-to-CAN Device**

- **Using Systembase's eCAN model**

**![image-png-Sep-01-2025-12-59-46-7757-AM](https://help.aidinrobotics.co.kr/hs-fs/hubfs/image-png-Sep-01-2025-12-59-46-7757-AM.png?width=474&height=474&name=image-png-Sep-01-2025-12-59-46-7757-AM.png)**

- Download Manual and eCANView from the following site: [https://www.sysbas.com/en/downloads/ecan/](https://www.sysbas.com/en/downloads/ecan/)

#### 2.6 Force/Torque Out of Range

The sensor can operate up to its nominal capacity, while a single axis load. On Nominal capacity reading is incorrect and invalid.

The nominal capacity of composite loading is The following diagram illustrates a complex loading scenario. The sensor cannot operate outside the normal operating area.

![image-png-Sep-01-2025-01-00-24-7868-AM](https://help.aidinrobotics.co.kr/hs-fs/hubfs/image-png-Sep-01-2025-01-00-24-7868-AM.png?width=670&height=254&name=image-png-Sep-01-2025-01-00-24-7868-AM.png)

The following graph shows the range of payloads and tool lengths that can be used with AFT200-D80-C sensor for applications requiring high or moderate precision.

- The total percentage of the calibrated range used by Fxy and Tz axes is greater than 105%. Refer to the following Fxy, Tz equation.

![image-png-Sep-01-2025-01-00-53-2317-AM](https://help.aidinrobotics.co.kr/hs-fs/hubfs/image-png-Sep-01-2025-01-00-53-2317-AM.png?width=496&height=70&name=image-png-Sep-01-2025-01-00-53-2317-AM.png)

- The total percentage of the calibrated range used by Fz and Txy axes is greater than 105%. Refer to the following Fz, Txy equation.

![image-png-Sep-01-2025-01-01-24-1910-AM](https://help.aidinrobotics.co.kr/hs-fs/hubfs/image-png-Sep-01-2025-01-01-24-1910-AM.png?width=465&height=66&name=image-png-Sep-01-2025-01-01-24-1910-AM.png)

 

### 3. Software

#### 3.1.1 IXXAT’s USB-to-CAN

- Sample Program (Provided by IXXAT)
  
    - CanAnalyzer3 Mini  
      windows → IXXAT folder → IXXAT CanAnalyzer3 Mini

![image-png-Sep-01-2025-01-02-04-5164-AM](https://help.aidinrobotics.co.kr/hs-fs/hubfs/image-png-Sep-01-2025-01-02-04-5164-AM.png?width=670&height=482&name=image-png-Sep-01-2025-01-02-04-5164-AM.png)

- A sample program provided by AIDIN ROBOTICS
  
    - Install IXXAT CAN VCI V4 & installer below
    - Sample program
      
      [installer(26.05).zip](https://help.aidinrobotics.co.kr/hubfs/%EC%97%90%EC%9D%B4%EB%94%98%20%EC%9D%B8%EC%8A%A4%ED%86%A8%EB%9F%AC%20%EC%84%A4%EC%B9%98/installer(26.05).zip?hsLang=en)  
      [AFT SAMPLE\_v1.1.zip](https://help.aidinrobotics.co.kr/hubfs/%EC%97%90%EC%9D%B4%EB%94%98%20%EC%84%BC%EC%84%9C%20%EC%97%B0%EA%B2%B0%ED%9B%84%20%EC%8B%A4%ED%96%89%20%EC%83%98%ED%94%8C/AFT%20SAMPLE_v1.1.zip?hsLang=en)  
      [AFT SERIES SAMPLE\_v1.2.zip](https://help.aidinrobotics.co.kr/hubfs/%EC%97%90%EC%9D%B4%EB%94%98%20%EC%84%BC%EC%84%9C%20%EC%97%B0%EA%B2%B0%ED%9B%84%20%EC%8B%A4%ED%96%89%20%EC%83%98%ED%94%8C/AFT%20SERIES%20SAMPLE_v1.2.zip?hsLang=en)

- - Run AFT SERIES SAMPLE.exe after installation

![image-png-Sep-01-2025-01-08-28-5468-AM](https://help.aidinrobotics.co.kr/hs-fs/hubfs/image-png-Sep-01-2025-01-08-28-5468-AM.png?width=670&height=362&name=image-png-Sep-01-2025-01-08-28-5468-AM.png)

- Pop-up screen when running a sample program

1. CAN Device Selection
   
   Select a device. Devices currently connected to your PC appear as a list. Click the appropriate device and press the OK button.
   
   ※ The sample program is based on IXXAT's USB-to-CAN converter.
   
   ![image-png-Sep-01-2025-01-09-02-3025-AM](https://help.aidinrobotics.co.kr/hs-fs/hubfs/image-png-Sep-01-2025-01-09-02-3025-AM.png?width=463&height=216&name=image-png-Sep-01-2025-01-09-02-3025-AM.png)
2. CAN CONTROLLER SELECTION
   
   Displays the device name selected in the previous step. Select the controller channel below and press the OK button.
   
   ![image-png-Sep-01-2025-01-11-04-1822-AM](https://help.aidinrobotics.co.kr/hs-fs/hubfs/image-png-Sep-01-2025-01-11-04-1822-AM.png?width=404&height=197&name=image-png-Sep-01-2025-01-11-04-1822-AM.png)
3. CAN Controller Initial Setup
   
   Steps to initialize the controller selected in the previous step. Check the frame and baud rate and press the OK button.

![image-png-Sep-01-2025-05-07-55-0216-AM](https://help.aidinrobotics.co.kr/hs-fs/hubfs/image-png-Sep-01-2025-05-07-55-0216-AM.png?width=532&height=490&name=image-png-Sep-01-2025-05-07-55-0216-AM.png)

- Sample Program Interface Description

![image-png-Sep-01-2025-01-13-20-6920-AM](https://help.aidinrobotics.co.kr/hs-fs/hubfs/image-png-Sep-01-2025-01-13-20-6920-AM.png?width=670&height=399&name=image-png-Sep-01-2025-01-13-20-6920-AM.png)

① Program run

Run the sample program.

② Graph plot

Real-time data of 6-axis force/torque data (Fx, Fy, Fz, Tx, Ty, Tz) can be viewed in a graph.

③ CAN ID

Sets the CAN ID of the connected sensor. If you have more than one ID, enter the lowest ID. ex) For 0x01(1), 0x02(2), enter 1

④ CAN transmit

Send CAN message to output 6-axis force/torque value. CAN Msg \[0x102, 0x01, 0x03, 0x01\]

⑤ BIAS

Initializes all 6-axis force/torque data to zero.

⑥STOP

Exit the program. Press both STOP buttons and the program will exit after 3 seconds.

⑦ Collect Data

Save the force/torque data log. Please refer to the description of data storage on the page below.

⑧ Save Data File Path

Sets the path for storing force/torque data logs. Please refer to the description of data storage on the page below.

##### 3.1.2 Save data log

1. Save Directory Settings
   
   Touch the folder button to open a pop-up window. Select a file (.txt) in the desired directory and press the OK button to specify it. Check the path shown in Path. (If the specified file does not exist in that path, create the file automatically)
   
   ![image-png-Sep-01-2025-01-15-12-2372-AM](https://help.aidinrobotics.co.kr/hs-fs/hubfs/image-png-Sep-01-2025-01-15-12-2372-AM.png?width=508&height=426&name=image-png-Sep-01-2025-01-15-12-2372-AM.png)
2. Saving the Data Log
   
   Press the button under Collect Data to start saving. When saving, the button displays a fluorescent color. Press the button to exit the save. Data is stored cumulatively in a file, so it is recommended that you specify a new file for each save.
   
   ![image-png-Sep-01-2025-01-15-41-2763-AM](https://help.aidinrobotics.co.kr/hs-fs/hubfs/image-png-Sep-01-2025-01-15-41-2763-AM.png?width=461&height=205&name=image-png-Sep-01-2025-01-15-41-2763-AM.png)
3. Checking the Data Log
   
   You can open a file in that directory to view the stored force/torque data. The data are stored in each column in the order Fx, Fy, Fz, Tx, Ty, and Tz.
   
   ![image-png-Sep-01-2025-01-17-19-2202-AM](https://help.aidinrobotics.co.kr/hs-fs/hubfs/image-png-Sep-01-2025-01-17-19-2202-AM.png?width=503&height=385&name=image-png-Sep-01-2025-01-17-19-2202-AM.png)

#### 3.2.1 SystemBase’s EtherNET to CAN

- A sample program provided by AIDIN ROBOTICS  
  [AIDIN\_Sample\_EtherNET.zip](https://help.aidinrobotics.co.kr/hubfs/%EC%97%90%EC%9D%B4%EB%94%98%20%EC%84%BC%EC%84%9C%20%EC%97%B0%EA%B2%B0%ED%9B%84%20%EC%8B%A4%ED%96%89%20%EC%83%98%ED%94%8C/AIDIN_Sample_EtherNET.zip?hsLang=en)
  
    - AIDIN\_Installer→Volume→setup , Install setup
    - Set IP through Systembase's manual or the document below
    - [AFT200-D80 EtherNET Communication](https://www.notion.so/AFT200-D80-EtherNET-Communication-a238b33972fe4d5e9ed3bbbcac1744dc?pvs=21)
    - Run AIDIN\_Sample\_EN→AIDIN\_Sample\_EN.exe
- Pop-up screen when running a sample program

![image-png-Sep-01-2025-01-28-21-3870-AM](https://help.aidinrobotics.co.kr/hs-fs/hubfs/image-png-Sep-01-2025-01-28-21-3870-AM.png?width=670&height=502&name=image-png-Sep-01-2025-01-28-21-3870-AM.png)

- Sample Program Interface Description

![image-png-Sep-01-2025-01-29-26-9133-AM](https://help.aidinrobotics.co.kr/hs-fs/hubfs/image-png-Sep-01-2025-01-29-26-9133-AM.png?width=670&height=482&name=image-png-Sep-01-2025-01-29-26-9133-AM.png)

① Program run

Run the sample program.

② STOP

Exit the program. Press both STOP buttons and the program will exit after 3 seconds.

③ CAN transmit message

CAN Msg \[0x102, 0x01, 0x03, 0x01\]

④ CAN transmit button

Send CAN message to output 6-axis force/torque value.

⑤ IP Setting

Enter the IP of the sensor matched in the above setting

⑥ Filtering

Default LPF filter configured, available from 0 to 9.9 (10 is not available)

⑦ Save Data File Path

Sets the path for storing force/torque data logs. Please refer to the description of data storage on the page below.

⑧ Collect Data

Save the force/torque data log. Please refer to the description of data storage on the page below.

⑨ BIAS, PAUSE

Initializes all 6-axis force/torque data to zero. You can measure the desired force value by removing elements from the installation and attachment.

When you click the PAUSE button, you can pause the sensor data value.

⑩ Graph

Real-time data of 6-axis force/torque data (Fx, Fy, Fz, Tx, Ty, Tz) can be viewed in a graph.

##### 3.2.2 Save Datalog

![image-png-Sep-01-2025-01-30-52-2366-AM](https://help.aidinrobotics.co.kr/hs-fs/hubfs/image-png-Sep-01-2025-01-30-52-2366-AM.png?width=670&height=51&name=image-png-Sep-01-2025-01-30-52-2366-AM.png)

1. Save Directory Settings
   
   Touch the folder button to open a pop-up window. Specify the file (.txt) in the desired directory. Check the path shown in Path. (If the specified file does not exist in that path, create the file automatically)
2. Saving the Data Log
   
   Press the button below Collect Data to start saving. When saving, the button displays a fluorescent color. Press the button to exit the save. Data is stored cumulatively in a file, so it is recommended that you specify a new file for each save.
   
     - Initialize the data saved when you click the Reset button and start saving again
     - Please be careful with the Reset button  
       ![image-png-Sep-01-2025-01-32-20-8054-AM](https://help.aidinrobotics.co.kr/hs-fs/hubfs/image-png-Sep-01-2025-01-32-20-8054-AM.png?width=670&height=54&name=image-png-Sep-01-2025-01-32-20-8054-AM.png)
3. Checking the Data Log
   
   You can open a file in that directory to view the stored force/torque data. The data are stored in each column in the order Fx, Fy, Fz, Tx, Ty, and Tz.

![image-png-Sep-01-2025-01-33-22-7621-AM](https://help.aidinrobotics.co.kr/hs-fs/hubfs/image-png-Sep-01-2025-01-33-22-7621-AM.png?width=503&height=385&name=image-png-Sep-01-2025-01-33-22-7621-AM.png)

### **Source codes**

1. Python code -Client

#\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*

\#

\# Author: AIDIN ROBOTICS \<info@aidinrobotics.com\>

\# Date: 12-08-2023

\#

\# ----------------------------------------------------------------------

\#

\# This program is free software; you can redistribute it and/or modify

\# it under the terms of the GNU General Public License as published by

\# the Free Software Foundation; either version 2 of the License, or

\# (at your option) any later version.

\#

\# This program is distributed in the hope that it will be useful,

\# but WITHOUT ANY WARRANTY; 

\#

#\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*/

import struct

import socket

 

IP\_ADDR = '192.168.0.223'

PORT = 4001

 

CMD\_TYPE\_SENSOR\_ID = '01'

SENSOR\_TRANSMIT\_TYPE\_MODE = '03'

SENSOR\_TRANSMIT\_TYPE\_SET\_TEMP = '01'

 

s = socket.socket(socket.AF\_INET, socket.SOCK\_STREAM)

 

def main():

global s

s.settimeout(2.0)

s.connect((IP\_ADDR, PORT))

 

sendData = '04' + '00' + '00' + '01' + '02'+ '06' + CMD\_TYPE\_SENSOR\_ID + SENSOR\_TRANSMIT\_TYPE\_MODE+SENSOR\_TRANSMIT\_TYPE\_SET\_TEMP

sendData = bytearray.fromhex(sendData)

s.send(sendData)

recvData = recvMsg()

 

#Initializing

Fx=0

Fy=0

Fz=0

Tx=0

Ty=0

Tz=0

 

for i in range(10000):

recvData = recvMsg()

if recvData\[4\]==0x01:

Fx = ((recvData\[6\]\*256+recvData\[7\])/100.)-300.

Fy = ((recvData\[8\]\*256+recvData\[9\])/100.)-300.

Fz = ((recvData\[10\]\*256+recvData\[11\])/100.)-300.

\# print("Fx : " + str(round(Fx,2)) + " " + "Fy : " + str(round(Fy,2)) + " " + "Fz : " + str(round(Fz,2)) + " ")

elif recvData\[4\]==0x02:

Tx = ((recvData\[6\]\*256+recvData\[7\])/500.)-50.

Ty = ((recvData\[8\]\*256+recvData\[9\])/500.)-50.

Tz = ((recvData\[10\]\*256+recvData\[11\])/500.)-50.

\# print("Tx : " + str(round(Tx,2)) + " " + "Ty : " + str(round(Ty,2)) + " " + "Tz : " + str(round(Tz,2)) + " ")

print("Fx : " + str(round(Fx,2)) + " " + "Fy : " + str(round(Fy,2)) + " " + "Fz : " + str(round(Fz,2)) + " " +"Tx : " + str(round(Tx,2)) + " " + "Ty : " + str(round(Ty,2)) + " " + "Tz : " + str(round(Tz,2)) + " ")

s.close()

 

def recvMsg():

recvData = bytearray(s.recv(14))

 

printMsg(recvData)

 

return recvData

 

def printMsg(msg):

 

dataStr = "DATA: "

for i in range(6, 14):

dataStr += str(msg\[i\]) + " "

 

\# print(dataStr)

 

if \_\_name\_\_ == "\_\_main\_\_":

main()

2\. Window code - Client (C++)

/\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*

\*

\* Author: AIDIN ROBOTICS \<info@aidinrobotics.com\>

\* Date: 12-08-2023

\*

\* ----------------------------------------------------------------------

\*

\* This program is free software; you can redistribute it and/or modify

\* it under the terms of the GNU General Public License as published by

\* the Free Software Foundation; either version 2 of the License, or

\* (at your option) any later version.

\*

\* This program is distributed in the hope that it will be useful,

\* but WITHOUT ANY WARRANTY; 

\*

\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*/

 

//Std

#pragma comment(lib, "ws2\_32.lib")

#include \<iostream\>

 

//Windows Socket

#include \<winsock2.h\>

#include \<ws2tcpip.h\>

 

 

#define IP\_ADDR "192.168.0.223"

#define PORT 4001

 

#define CMD\_TYPE\_SENSOR\_ID          0x01

#define SENSOR\_TRANSMIT\_TYPE\_MODE  0x03

#define SENSOR\_TRANSMIT\_TYPE\_SET\_TEMP 0x01

 

void printMsg(const char \*msg);

void recvMsg(char \*msg);

double bytesToDouble(const char \*bytes);

 

SOCKET socket\_desc;

 

int main()

{

    WSADATA wsadata;

    int error = WSAStartup(0x0202, &wsadata);

    if (wsadata.wVersion != 0x0202)

    {

        WSACleanup(); //Clean up Winsock

        return false;

    }

 

    socket\_desc = socket(AF\_INET, SOCK\_STREAM, IPPROTO\_TCP);

    if (socket\_desc \< 0)

      std::cout \<\< "error opening socket" \<\< std::endl;

struct sockaddr\_in server;

 

server.sin\_addr.s\_addr = inet\_addr(IP\_ADDR);

    server.sin\_family = AF\_INET;

server.sin\_port = htons(PORT);

 

    std::cout \<\< "Connecting..." \<\< std::endl;

 

    if(error = connect(socket\_desc , (SOCKADDR\*)&server , sizeof(server))) {

        std::cout \<\< "Error code: " \<\< error \<\< std::endl;

return 1;

}

 

std::cout \<\< "Connected to the AFT200-D80 Module" \<\< std::endl;

 

char recvData\[50\] = {0};

char sendData\[10\] = {0};

 

sendData\[0\] = 0x04;

sendData\[1\] = 0x00;

sendData\[2\] = 0x00;

sendData\[3\] = 0x01;

sendData\[4\] = 0x02;

sendData\[5\] = 0x06;

sendData\[6\] = CMD\_TYPE\_SENSOR\_ID;

sendData\[7\] = SENSOR\_TRANSMIT\_TYPE\_MODE;

sendData\[8\] = SENSOR\_TRANSMIT\_TYPE\_SET\_TEMP;

 

send(socket\_desc, sendData, 10, 0);

recvMsg(recvData);

 

double Fx, Fy, Fz, Tx, Ty, Tz;

for(size\_t i = 0; i \< 10000; ++i) {

recvMsg(recvData);

if(recvData\[4\]==0x01){

Fx = ((recvData\[6\]\*256+recvData\[7\])/100.)-300.;

Fy = ((recvData\[8\]\*256+recvData\[9\])/100.)-300.;

Fz = ((recvData\[10\]\*256+recvData\[11\])/100.)-300.;

}

 

else if(recvData\[4\]==0x02){

Tx = ((recvData\[6\]\*256+recvData\[7\])/500.)-50.;

Ty = ((recvData\[8\]\*256+recvData\[9\])/500.)-50.;

Tz = ((recvData\[10\]\*256+recvData\[11\])/500.)-50.;

}

 

std::cout \<\< Fx \<\< " " \<\< Fy \<\< " " \<\< Fz \<\< " " \<\< Tx \<\< " " \<\< Ty \<\< " " \<\< Tz \<\< std::endl;

}

 

closesocket(socket\_desc);

 

return 0;

}

 

void recvMsg(char \*msg) {

size\_t received = recv(socket\_desc, msg, 14, 0);

 

printMsg(msg);

}

 

void printMsg(const char \*msg)

{

for(size\_t i = 6; i \< 14; ++i) {

//std::cout \<\< (int)msg\[i\] \<\< " ";

}

 

//std::cout \<\< std::endl \<\< std::endl;

};

3\. Linux -Client

/\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*

\*

\* Author: AIDIN ROBOTICS \<info@aidinrobotics.com\>

\* Date: 12-08-2023

\*

\* ----------------------------------------------------------------------

\*

\* This program is free software; you can redistribute it and/or modify

\* it under the terms of the GNU General Public License as published by

\* the Free Software Foundation; either version 2 of the License, or

\* (at your option) any later version.

\*

\* This program is distributed in the hope that it will be useful,

\* but WITHOUT ANY WARRANTY; 

\*

\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*/

 

//Std

#include \<iostream\>

 

//Linux Socket

#include \<sys/socket.h\>

#include \<arpa/inet.h\>

#include \<unistd.h\>

 

#define IP\_ADDR "192.168.0.223"

#define PORT 4001

 

#define CMD\_TYPE\_SENSOR\_ID          0x01

#define SENSOR\_TRANSMIT\_TYPE\_MODE  0x03

#define SENSOR\_TRANSMIT\_TYPE\_SET\_TEMP 0x01

 

 

void printMsg(const char \*msg);

void recvMsg(char \*msg);

double bytesToDouble(const char \*bytes);

 

int socket\_desc;

 

int main()

{

socket\_desc = socket(AF\_INET, SOCK\_STREAM, 0);

struct sockaddr\_in server;

 

server.sin\_addr.s\_addr = inet\_addr(IP\_ADDR);

server.sin\_family = AF\_INET;

server.sin\_port = htons(PORT);

 

if(connect(socket\_desc , (struct sockaddr \*)&server , sizeof(server)) \< 0) {

return 1;

}

 

std::cout \<\< "Connected to the CANToEth Module" \<\< std::endl;

 

char recvData\[50\] = {0};

char sendData\[10\] = {0};

 

sendData\[0\] = 0x04;

sendData\[1\] = 0x00;

sendData\[2\] = 0x00;

sendData\[3\] = 0x01;

sendData\[4\] = 0x02;

sendData\[5\] = 0x06;

sendData\[6\] = CMD\_TYPE\_SENSOR\_ID;

sendData\[7\] = SENSOR\_TRANSMIT\_TYPE\_MODE;

sendData\[8\] = SENSOR\_TRANSMIT\_TYPE\_SET\_TEMP;

 

send(socket\_desc, sendData, 10, 0);

recvMsg(recvData);

 

double Fx, Fy, Fz, Tx, Ty, Tz;

for(size\_t i = 0; i \< 10000; ++i) {

recvMsg(recvData);

if(recvData\[4\]==0x01){

Fx = ((recvData\[6\]\*256+recvData\[7\])/100.)-300.;

Fy = ((recvData\[8\]\*256+recvData\[9\])/100.)-300.;

Fz = ((recvData\[10\]\*256+recvData\[11\])/100.)-300.;

}

 

else if(recvData\[4\]==0x02){

Tx = ((recvData\[6\]\*256+recvData\[7\])/500.)-50.;

Ty = ((recvData\[8\]\*256+recvData\[9\])/500.)-50.;

Tz = ((recvData\[10\]\*256+recvData\[11\])/500.)-50.;

}

 

std::cout \<\< Fx \<\< " " \<\< Fy \<\< " " \<\< Fz \<\< " " \<\< Tx \<\< " " \<\< Ty \<\< " " \<\< Tz \<\< std::endl;

}

 

close(socket\_desc);

 

return 0;

}

 

 

void recvMsg(char \*msg) {

size\_t received = recv(socket\_desc, msg, 14, 0);

 

printMsg(msg);

}

 

void printMsg(const char \*msg)

{

 

for(size\_t i = 6; i \< 14; ++i) {

//std::cout \<\< (int)msg\[i\] \<\< " ";

}

 

//std::cout \<\< std::endl \<\< std::endl;

};

[**^ Go to First page**](https://help.aidinrobotics.co.kr/en/6-axis-force-torque-sensor-can#go-to-firstpage-AFT200)

- [Full Manual](https://help.aidinrobotics.co.kr/en/full-manual?hsLang=en)
- [Install Guide](https://help.aidinrobotics.co.kr/en/install-guide?hsLang=en)

[![에이딘로보틱스](https://help.aidinrobotics.co.kr/hs-fs/hubfs/%EB%A1%9C%EA%B3%A01%EC%97%B4_grey.png?width=160&height=16&name=%EB%A1%9C%EA%B3%A01%EC%97%B4_grey.png "에이딘로보틱스")](https://help.aidinrobotics.co.kr/help?hsLang=en)

**(주)에이딘로보틱스, AIDIN ROBOTICS Inc.**​

5F, 12-20, Simin-daero 327beon-gil, Dongan-gu, Anyang-si,Gyeonggi-do, South Korea (14055)​  
영업/마케팅/PR: [sales@aidinrobotics.co.kr](mailto:sales@aidinrobotics.co.kr) | 채용문의: [hr@aidinrobotics.co.kr](mailto:hr@aidinrobotics.co.kr) | 기업문의: [info@aidinrobotics.co.kr](mailto:info@aidinrobotics.co.kr) |  Tel: +82-31-360-7926

<http://linkedin.com/company/89803190/> <https://www.facebook.com/aidinrobotics> <https://instagram.com/aidinrobotics/> <https://www.youtube.com/channel/UCl-oWZpe9Cx48BuTRgk7QnA>

Copyright @ AIDIN ROBOTICS 2024   I  [개인정보처리방침](https://www.aidinrobotics.co.kr/privacypolicy)