Skip to content

Development of an Integrated ROS Interface for a Time-of-Flight Measurement System of a LiDAR Sensor

Development of an Integrated ROS
Interface for a Time-of-Flight
Measurement System of a LiDAR Sensor

gunn

Published January 02, 2026

Original author: Jorge CabralOriginal source (new tab)

Development of an Integrated ROS Interface for a Time-of-Flight Measurement System of a LiDAR Sensor

Components

Hardware components

WIZnet parts

Project description

๐Ÿ“˜ Development of a ROS Interface for a LiDAR Sensor (Master's Thesis)

๐Ÿ“Œ Paper Overview

Title: Development of an Integrated ROS Interface for a Time-of-Flight Measurement System of a LiDAR Sensor

Author: Simรฃo Pedro Torres Araรบjo (University of Minho, Portugal)
Year: 2021
Collaboration: Bosch Portugal & University of Minho

๐ŸŽฏ Research Objectives

Development of a LiDAR sensor system for autonomous vehicles:

Implementation of a high-precision Time-to-Digital Converter (TDC)
Integrated ROS (Robotic Operating System) interface
Full FPGA hardware implementation verification

๐Ÿ”ฌ Core Technologies

1. Double-sampling Gray TDC

Role: Measures the time from laser firing to reflected light detection (ToF)

Innovative Performance:

Resolution: 69 ps (1 cm depth resolution)
Precision: 59 ps
Power Consumption: 7 per channel LUTs, 20 Flip-flops, 1mW
73% resolution improvement over previous models

2. Software ROS Interface

Structure:

FPGA (TDC) โ†’ AXI โ†’ Zynq processor (Linux) โ†’ ROS Publisher โ†’ RVIZ visualization

Performance:

36,000 point cloud: 10.32 FPS
Power consumption: 2.087W
Disadvantages: Performance fluctuations due to OS overhead

3. Hardware ROS Interface (PoC)

Core: Utilizes the WIZ850io (W5500) network module

Structure:

FPGA (TDC) โ†’ FIFO โ†’ ROS Publisher (FPGA) โ†’ WIZ850io (SPI) โ†’ Ethernet

WIZ850io Configuration:

W5500 hardware TCP/IP stack
8 sockets (Sockets 0-2: for ROS communication)
SPI interface (30MHz)
IP: 192.168.1.10

 

๐ŸŒŸ Role of WIZ850io (W5500)

Key Contributions

TCP/IP stack hardware offload

Simultaneous operation of three TCP sockets required for ROS communication
No need to implement complex network protocols
System Simplification

No Linux OS required
No ARM processor required
ROS Publisher completed with FPGA only
Power Efficiency

84% reduction in overall system power
Suitable for industrial embedded systems

Bottlenecks

SPI interface Limitations:

30MHz operation (relatively slow)
Bit-by-bit serial transfer
FPS limited from 10.32 to 3.45

Author's improvement suggestions:

"Performance can be significantly improved by implementing TCP/IP directly on the FPGA or using a faster interface."

 

๐Ÿ’ก Key Achievements

Academic Contributions

Development of a world-class TDC

Optimizing performance per resource
Ideal for multi-channel LiDAR sensors
Demonstrated full hardware ROS implementation

Implemented ROS node solely on FPGA without a processor
Reduced development time with WIZ850io
Industrial Applications

Bosch Automotive LiDAR Project
Academic Paper Published

==================

๐Ÿ“˜ LiDAR ์„ผ์„œ์šฉ ROS ์ธํ„ฐํŽ˜์ด์Šค ๊ฐœ๋ฐœ (์„์‚ฌํ•™์œ„ ๋…ผ๋ฌธ)

๐Ÿ“Œ ๋…ผ๋ฌธ ๊ฐœ์š”

์ œ๋ชฉ: Development of an Integrated ROS Interface for a Time-of-Flight Measurement System of a LiDAR Sensor

์ €์ž: Simรฃo Pedro Torres Araรบjo (University of Minho, ํฌ๋ฅดํˆฌ๊ฐˆ)
์—ฐ๋„: 2021๋…„
ํ˜‘๋ ฅ: Bosch Portugal & University of Minho


๐ŸŽฏ ์—ฐ๊ตฌ ๋ชฉํ‘œ

์ž์œจ์ฃผํ–‰ ์ฐจ๋Ÿ‰์šฉ LiDAR ์„ผ์„œ ์‹œ์Šคํ…œ ๊ฐœ๋ฐœ:

  1. ๊ณ ์ •๋ฐ€ Time-to-Digital Converter (TDC) ๊ตฌํ˜„
  2. ROS(Robotic Operating System) ์ธํ„ฐํŽ˜์ด์Šค ํ†ตํ•ฉ
  3. FPGA ์™„์ „ ํ•˜๋“œ์›จ์–ด ๊ตฌํ˜„ ๊ฒ€์ฆ

๐Ÿ”ฌ ํ•ต์‹ฌ ๊ธฐ์ˆ 

1. Double-sampling Gray TDC

์—ญํ• : ๋ ˆ์ด์ € ๋ฐœ์‚ฌ ํ›„ ๋ฐ˜์‚ฌ๊ด‘ ๊ฒ€์ถœ๊นŒ์ง€์˜ ์‹œ๊ฐ„(ToF) ์ธก์ •

ํ˜์‹ ์  ์„ฑ๋Šฅ:

  • ํ•ด์ƒ๋„: 69 ps (1cm ๊นŠ์ด ๋ถ„ํ•ด๋Šฅ)
  • ์ •๋ฐ€๋„: 59 ps
  • ์†Œ๋น„ ์ž์›: ์ฑ„๋„๋‹น 7 LUTs, 20 Flip-flops, 1mW
  • ๊ธฐ์กด ๋Œ€๋น„ ํ•ด์ƒ๋„ 73% ํ–ฅ์ƒ

2. ์†Œํ”„ํŠธ์›จ์–ด ROS ์ธํ„ฐํŽ˜์ด์Šค

๊ตฌ์กฐ:

FPGA(TDC) โ†’ AXI โ†’ Zynq ํ”„๋กœ์„ธ์„œ(Linux) โ†’ ROS Publisher โ†’ RVIZ ์‹œ๊ฐํ™”

์„ฑ๋Šฅ:

  • 36,000 ํฌ์ธํŠธ ํด๋ผ์šฐ๋“œ: 10.32 FPS
  • ์ „๋ ฅ ์†Œ๋น„: 2.087W
  • ๋‹จ์ : OS ์˜ค๋ฒ„ํ—ค๋“œ๋กœ ์„ฑ๋Šฅ ๋ณ€๋™

3. ํ•˜๋“œ์›จ์–ด ROS ์ธํ„ฐํŽ˜์ด์Šค (PoC)

ํ•ต์‹ฌ: WIZ850io (W5500) ๋„คํŠธ์›Œํฌ ๋ชจ๋“ˆ ํ™œ์šฉ

๊ตฌ์กฐ:

FPGA(TDC) โ†’ FIFO โ†’ ROS Publisher(FPGA) โ†’ WIZ850io(SPI) โ†’ Ethernet

WIZ850io ์„ค์ •:

  • W5500 ํ•˜๋“œ์›จ์–ด TCP/IP ์Šคํƒ
  • 8๊ฐœ ์†Œ์ผ“ (Socket 0-2: ROS ํ†ต์‹ ์šฉ)
  • SPI ์ธํ„ฐํŽ˜์ด์Šค (30MHz)
  • IP: 192.168.1.10

๐Ÿ“Š ์†Œํ”„ํŠธ์›จ์–ด vs ํ•˜๋“œ์›จ์–ด ๋น„๊ต

ํ•ญ๋ชฉ์†Œํ”„ํŠธ์›จ์–ดํ•˜๋“œ์›จ์–ด(WIZ850io)
FPS10.32 (๋ณ€๋™)3.45 (์•ˆ์ •)
ํ”„๋กœ์„ธ์„œํ•„์š”๋ถˆํ•„์š” โœ…
์ „๋ ฅ2.087W0.331W (-84%)
์•ˆ์ •์„ฑ๋‚ฎ์Œ๋งค์šฐ ๋†’์Œ
BRAM061

๐ŸŒŸ WIZ850io(W5500)์˜ ์—ญํ• 

ํ•ต์‹ฌ ๊ธฐ์—ฌ

  1. TCP/IP ์Šคํƒ ํ•˜๋“œ์›จ์–ด ์˜คํ”„๋กœ๋“œ
    • ROS ํ†ต์‹ ์— ํ•„์š”ํ•œ 3๊ฐœ TCP ์†Œ์ผ“ ๋™์‹œ ์šด์˜
    • ๋ณต์žกํ•œ ๋„คํŠธ์›Œํฌ ํ”„๋กœํ† ์ฝœ ๊ตฌํ˜„ ๋ถˆํ•„์š”
  2. ์‹œ์Šคํ…œ ๋‹จ์ˆœํ™”
    • Linux OS ๋ถˆํ•„์š”
    • ARM ํ”„๋กœ์„ธ์„œ ๋ถˆํ•„์š”
    • FPGA๋งŒ์œผ๋กœ ROS Publisher ์™„์„ฑ
  3. ์ „๋ ฅ ํšจ์œจ์„ฑ
    • ์ „์ฒด ์‹œ์Šคํ…œ ์ „๋ ฅ 84% ๊ฐ์†Œ
    • ์‚ฐ์—…์šฉ ์ž„๋ฒ ๋””๋“œ ์‹œ์Šคํ…œ์— ์ ํ•ฉ

๋ณ‘๋ชฉ ์š”์ธ

SPI ์ธํ„ฐํŽ˜์ด์Šค์˜ ํ•œ๊ณ„:

  • 30MHz ๋™์ž‘ (์ƒ๋Œ€์ ์œผ๋กœ ๋А๋ฆผ)
  • ๋น„ํŠธ ๋‹จ์œ„ ์ง๋ ฌ ์ „์†ก
  • FPS๋ฅผ 10.32 โ†’ 3.45๋กœ ์ œํ•œ

์ €์ž์˜ ๊ฐœ์„  ์ œ์•ˆ:

"TCP/IP๋ฅผ FPGA์— ์ง์ ‘ ๊ตฌํ˜„ํ•˜๊ฑฐ๋‚˜ ๋” ๋น ๋ฅธ ์ธํ„ฐํŽ˜์ด์Šค ์‚ฌ์šฉ ์‹œ ์„ฑ๋Šฅ ๋Œ€ํญ ํ–ฅ์ƒ ๊ฐ€๋Šฅ"


๐Ÿ’ก ์ฃผ์š” ์„ฑ๊ณผ

ํ•™์ˆ ์  ๊ธฐ์—ฌ

  1. ์„ธ๊ณ„ ์ตœ๊ณ  ์ˆ˜์ค€ TDC ๊ฐœ๋ฐœ
    • ์ž์› ๋Œ€๋น„ ์„ฑ๋Šฅ ์ตœ์ ํ™”
    • ๋‹ค์ฑ„๋„ LiDAR ์„ผ์„œ์— ์ด์ƒ์ 
  2. ์™„์ „ ํ•˜๋“œ์›จ์–ด ROS ๊ตฌํ˜„ ์ž…์ฆ
    • ํ”„๋กœ์„ธ์„œ ์—†์ด FPGA๋งŒ์œผ๋กœ ROS ๋…ธ๋“œ ๊ตฌํ˜„
    • WIZ850io๋กœ ๊ฐœ๋ฐœ ์‹œ๊ฐ„ ๋‹จ์ถ•
  3. ์‚ฐ์—… ์ ์šฉ
    • Bosch ์ž๋™์ฐจ LiDAR ํ”„๋กœ์ ํŠธ
    • ํ•™์ˆ  ๋…ผ๋ฌธ ๋ฐœํ‘œ

 

์ด 133ํŽ˜์ด์ง€ ๋ฌธ์„œ์—์„œ 15๋ฒˆ์˜ W5500 ์–ธ๊ธ‰ ์žฅ๋ฉด - 12๋ฒˆ์€ 5์žฅ์—์„œ ์–ธ๊ธ‰๋œ๋‹ค.

์ œ1์žฅ: ์„œ๋ก  (Introduction) : ์—ฐ๊ตฌ์˜ ๋ฐฐ๊ฒฝ๊ณผ ๋ชฉ์ ์„ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค.
๋‚ด์šฉ: ์ž์œจ ์ฃผํ–‰ ๋ฐ ์ •๋ฐ€ ๋งคํ•‘์„ ์œ„ํ•œ LiDAR ์„ผ์„œ์˜ ์ค‘์š”์„ฑ์„ ์„ค๋ช…ํ•˜๊ณ , ๋ณธ ๋…ผ๋ฌธ์˜ ๋™๊ธฐ, ๊ตฌ์ฒด์ ์ธ ์—ฐ๊ตฌ ๋ชฉํ‘œ ๋ฐ ๋ฐฉ๋ฒ•๋ก ์„ ์ œ์‹œํ•ฉ๋‹ˆ๋‹ค.

์ œ2์žฅ: ๊ธฐ์ˆ  ํ˜„ํ™ฉ (State-of-the-Art): ๋ณธ ์—ฐ๊ตฌ์™€ ๊ด€๋ จ๋œ ๊ธฐ์กด ๊ธฐ์ˆ  ๋ฐ ์ด๋ก ์  ๋ฐฐ๊ฒฝ์„ ๊ฒ€ํ† ํ•ฉ๋‹ˆ๋‹ค.
๋‚ด์šฉ: LiDAR ์„ผ์„œ์˜ ์›๋ฆฌ, ์‹œ๊ฐ„-๋””์ง€ํ„ธ ๋ณ€ํ™˜๊ธฐ(TDC), FPGA ๊ตฌ์กฐ, ๊ทธ๋ฆฌ๊ณ  ๋กœ๋ด‡ ์šด์˜ ์ฒด์ œ(ROS)์— ๋Œ€ํ•œ ์ „๋ฐ˜์ ์ธ ๊ฐœ์š”์™€ ์ตœ์‹  ๊ธฐ์ˆ  ๋™ํ–ฅ์„ ๋‹ค๋ฃน๋‹ˆ๋‹ค.

์ œ3์žฅ: ์ด์ค‘ ์ƒ˜ํ”Œ๋ง ๊ทธ๋ ˆ์ด TDC (Double-sampling Gray TDC): ๋ณธ ์—ฐ๊ตฌ์—์„œ ์ œ์•ˆํ•˜๋Š” ํ•ต์‹ฌ ํ•˜๋“œ์›จ์–ด ์•„ํ‚คํ…์ฒ˜๋ฅผ ์„ค๋ช…ํ•ฉ๋‹ˆ๋‹ค.
๋‚ด์šฉ: ํ•ด์ƒ๋„๋ฅผ ๊ฐœ์„ ํ•˜๊ธฐ ์œ„ํ•ด ์ด์ค‘ ์ƒ˜ํ”Œ๋ง ๋‹จ๊ณ„๋ฅผ ๋„์ž…ํ•œ ๊ทธ๋ ˆ์ด ์ฝ”๋“œ ์˜ค์‹ค๋ ˆ์ดํ„ฐ ๊ธฐ๋ฐ˜ TDC์˜ ์„ค๊ณ„, ๊ตฌํ˜„ ๊ณผ์ • ๋ฐ ํ…Œ์ŠคํŠธ ๊ฒฐ๊ณผ(์ •๋ฐ€๋„ ๋ฐ ํ•ด์ƒ๋„ ๋“ฑ)๋ฅผ ์ƒ์„ธํžˆ ๊ธฐ์ˆ ํ•ฉ๋‹ˆ๋‹ค.

์ œ4์žฅ: ์†Œํ”„ํŠธ์›จ์–ด ROS ์ธํ„ฐํŽ˜์ด์Šค (Software ROS Interface): ํ”„๋กœ์„ธ์„œ์—์„œ ์‹คํ–‰๋˜๋Š” ์†Œํ”„ํŠธ์›จ์–ด ๊ธฐ๋ฐ˜ ์ธํ„ฐํŽ˜์ด์Šค ๊ตฌํ˜„์„ ๋‹ค๋ฃน๋‹ˆ๋‹ค.
๋‚ด์šฉ: PetaLinux๋ฅผ ์ด์šฉํ•œ ์ž„๋ฒ ๋””๋“œ ๋ฆฌ๋ˆ…์Šค ์ด๋ฏธ์ง€ ์ƒ์„ฑ, TDC ๋ฐ์ดํ„ฐ ์ ‘๊ทผ์„ ์œ„ํ•œ ๋ฆฌ๋ˆ…์Šค ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ฐœ๋ฐœ, ๊ทธ๋ฆฌ๊ณ  RVIZ๋ฅผ ํ†ตํ•ด ๋ฐ์ดํ„ฐ๋ฅผ ์‹œ๊ฐํ™”ํ•˜๋Š” ROS ๋…ธ๋“œ์˜ ๊ตฌํ˜„ ๊ณผ์ •์„ ์„ค๋ช…ํ•ฉ๋‹ˆ๋‹ค.

์ œ5์žฅ: ํ•˜๋“œ์›จ์–ด ROS ์ธํ„ฐํŽ˜์ด์Šค (Hardware ROS Interface): ์‹œ์Šคํ…œ ์„ฑ๋Šฅ ์ตœ์ ํ™”๋ฅผ ์œ„ํ•œ ํ•˜๋“œ์›จ์–ด ๊ธฐ๋ฐ˜ ROS ์ธํ„ฐํŽ˜์ด์Šค ๊ตฌํ˜„ ๋ฐ ๋ถ„์„์„ ๋‹ค๋ฃน๋‹ˆ๋‹ค.
๋‚ด์šฉ: ROS ๋„คํŠธ์›Œํฌ ํ”„๋กœํ† ์ฝœ์„ ๋ถ„์„ํ•˜๊ณ , ์ด๋ฅผ FPGA ํ•˜๋“œ์›จ์–ด(Programmable Logic)๋กœ ์ด์‹ํ•˜๋Š” ๊ณผ์ •๊ณผ ํ•˜๋“œ์›จ์–ด์—์„œ ์ง์ ‘ ๋ฉ”์‹œ์ง€๋ฅผ ๋ฐœํ–‰ํ•˜๋Š” ๋ฐฉ์‹์˜ ์„ฑ๋Šฅ(์†Œ๋น„ ์ „๋ ฅ ๊ฐ์†Œ ๋ฐ ์„ฑ๋Šฅ ์•ˆ์ •์„ฑ)์„ ํ‰๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

 

5.1์ ˆ์€ "๋ฌด์—‡์„ ์–ด๋–ป๊ฒŒ ๋งŒ๋“ค์ง€ ๋ถ„์„"ํ•˜๊ณ , 5.2์ ˆ์€ "์‹ค์ œ ํ•˜๋“œ์›จ์–ด ๋กœ์ง์œผ๋กœ ์ œ์ž‘"ํ•˜๋ฉฐ, 5.3์ ˆ์€ "๋งŒ๋“ค์–ด์ง„ ๊ฒฐ๊ณผ๋ฌผ์˜ ์„ฑ๋Šฅ์ด ์–ผ๋งˆ๋‚˜ ์ข‹์•„์กŒ๋Š”์ง€ ๊ฒ€์ฆ"ํ•˜๋Š” ๋‹จ๊ณ„์ž…๋‹ˆ๋‹ค.

 

5.2.2์ ˆ์—์„œ 12๋ฒˆ, 5.2.3์ ˆ์—์„œ 1๋ฒˆ ์–ธ๊ธ‰๋œ๋‹ค.

Development of an Integrated ROS Interface for a Time-of-Flight Measurement System of a LiDAR Sensor, ํ•™์ˆ ์  ๊ธฐ์—ฌ

 

์ฒ˜์Œ 5๋ฒˆ์€ WIZ850io ์†Œ๊ฐœํ•˜๋Š” ๋ถ€๋ถ„์—์„œ ์–ธ๊ธ‰๋˜๊ณ , 6๋ฒˆ์งธ ์–ธ๊ธ‰์€ ์•„๋ž˜์—์„œ ์–ธ๊ธ‰๋œ๋‹ค.

 

Development of an Integrated ROS Interface for a Time-of-Flight Measurement System of a LiDAR Sensor, ํ•™์ˆ ์  ๊ธฐ์—ฌ

 

7๋ฒˆ์งธ์™€ 8๋ฒˆ์งธ, 9๋ฒˆ์งธ ์–ธ๊ธ‰์€  SPI Master ๋ฅผ ์†Œ๊ฐœํ•˜๋ฉด์„œ ์–ธ๊ธ‰ํ•œ๋‹ค. 

SPI Master๋Š” FPGA๊ฐ€ ์™ธ๋ถ€ ์žฅ์น˜์ธ W5500(์ด๋”๋„ท ์ปจํŠธ๋กค๋Ÿฌ)๊ณผ ํ†ต์‹ ํ•˜๊ธฐ ์œ„ํ•ด ์ œ์–ด๊ถŒ(์ฃผ๋„๊ถŒ)์„ ๊ฐ–๋Š” ํ†ต์‹  ์ฃผ์ฒด๋ฅผ ๋งํ•ฉ๋‹ˆ๋‹ค. 

์ด ๋…ผ๋ฌธ์—์„œ๋Š” FPGA ๋‚ด๋ถ€์˜ ๋กœ์ง์ด SPI Master๊ฐ€ ๋ฉ๋‹ˆ๋‹ค. FPGA๊ฐ€ W5500(Slave)์—๊ฒŒ "๋ฐ์ดํ„ฐ๋ฅผ ๋ณด๋‚ด๋ผ"๊ฑฐ๋‚˜ "์ด ๋ฐ์ดํ„ฐ๋ฅผ ๋ฐ›์•„๋ผ"๊ณ  ๋ช…๋ น์„ ๋‚ด๋ฆฌ๋Š” ์‚ฌ๋ น๊ด€ ์—ญํ• ์„ ํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.

Development of an Integrated ROS Interface for a Time-of-Flight Measurement System of a LiDAR Sensor, ํ•™์ˆ ์  ๊ธฐ์—ฌ

 

 

10๋ฒˆ์งธ ์–ธ๊ธ‰์€ Building the ROS publisher  ์ ˆ์—์„œ ๋‚˜์˜ต๋‹ˆ๋‹ค.

FPGA์˜ ํ•˜๋“œ์›จ์–ด ๋กœ์ง(Programmable Logic, PL)๋งŒ์œผ๋กœ ROS ๋…ธ๋“œ๋ฅผ ์ƒ์„ฑํ•˜๊ณ  ๋ฐ์ดํ„ฐ๋ฅผ ๋ฐœํ–‰(Publish)ํ•˜๋Š” ์‹ค์ œ์ ์ธ ๊ตฌํ˜„ ๋ฐฉ๋ฒ•์„ ๋‹ค๋ฃจ๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

"์ž„๋ฒ ๋””๋“œ ๋ฆฌ๋ˆ…์Šค(OS) ๋„์›€ ์—†์ด FPGA ํ•˜๋“œ์›จ์–ด๋งŒ์œผ๋กœ ์–ด๋–ป๊ฒŒ ํ‘œ์ค€ ROS ํ†ต์‹  ๊ทœ์•ฝ์„ ๋งŒ์กฑ์‹œํ‚ค๊ณ , ์‹ค์‹œ๊ฐ„์œผ๋กœ Lidar ๋ฐ์ดํ„ฐ๋ฅผ ์ „์†กํ•  ์ˆ˜ ์žˆ๋Š”๊ฐ€"์— ๋Œ€ํ•œ ๊ตฌ์ฒด์ ์ธ ๊ธฐ์ˆ ์  ํ•ด๋‹ต์„ ๋‹ด๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

 

Development of an Integrated ROS Interface for a Time-of-Flight Measurement System of a LiDAR Sensor, ํ•™์ˆ ์  ๊ธฐ์—ฌ

 

11๋ฒˆ์งธ ์–ธ๊ธ‰๋„ ์œ„์˜ ์—ฐ์žฅ์„ ์ƒ์—์„œ FPGA ์™€ W5500์ด ์–ด๋–ป๊ฒŒ ๋ฐ์ดํƒ€๋ฅผ ์ฃผ๊ณ  ๋ฐ›๋Š”์ง€๋ฅผ ์„ค๋ช…ํ•˜๋Š” ๋ถ€๋ถ„์—์„œ ๋‚˜์˜ต๋‹ˆ๋‹ค.  

 

Development of an Integrated ROS Interface for a Time-of-Flight Measurement System of a LiDAR Sensor, ํ•™์ˆ ์  ๊ธฐ์—ฌ

 

Development of an Integrated ROS Interface for a Time-of-Flight Measurement System of a LiDAR Sensor, ํ•™์ˆ ์  ๊ธฐ์—ฌ

 

12๋ฒˆ์งธ ์–ธ๊ธ‰์€   ์‹ค์ œ ๊ตฌํ˜„๋œ ํ•˜๋“œ์›จ์–ด๊ฐ€ ์–ด๋–ป๊ฒŒ ์ž‘๋™๋˜๋Š”์ง€๋ฅผ ์„ค๋ช…ํ•˜๋ฉด์„œ ์–ธ๊ธ‰๋˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. 

Development of an Integrated ROS Interface for a Time-of-Flight Measurement System of a LiDAR Sensor, ํ•™์ˆ ์  ๊ธฐ์—ฌ

 

 

13~15๋ฒˆ์งธ ์–ธ๊ธ‰์€ ์ฃผ์„์— ์žˆ๋‹ค. 

Development of an Integrated ROS Interface for a Time-of-Flight Measurement System of a LiDAR Sensor, ํ•™์ˆ ์  ๊ธฐ์—ฌ

 

์™œ ํ•˜๋“œ์›จ์–ด ๋ถ€๋ฌธ์—์„œ W5500์„ ์ด์šฉํ–ˆ๋Š”๊ฐ€?

 

TCP/IP ํ”„๋กœํ† ์ฝœ ์Šคํƒ์„ ํ•˜๋“œ์›จ์–ด์ ์œผ๋กœ ๊ฐ„๋‹จํ•˜๊ฒŒ ๊ตฌํ˜„ํ•˜๊ธฐ ์œ„ํ•จ์ž…๋‹ˆ๋‹ค. ์ƒ์„ธํ•œ ์ด์œ ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

1. TCP/IP ์Šคํƒ ๊ตฌํ˜„์˜ ๋‹จ์ˆœํ™”

๋ณต์žก์„ฑ ๊ฐ์†Œ: ROS์˜ ๋น„๋™๊ธฐ ํ†ต์‹  ์‹œ์Šคํ…œ์„ ํ•˜๋“œ์›จ์–ด(FPGA)๋กœ ์˜ฎ๊ธฐ๋ ค๋ฉด TCP/IP ์Šคํƒ์ด ํ•„์ˆ˜์ ์ž…๋‹ˆ๋‹ค. ์ด๋ฅผ FPGA ๋กœ์ง(HDL)์œผ๋กœ ์ง์ ‘ ๋ชจ๋‘ ๊ตฌํ˜„ํ•˜๋Š” ๊ฒƒ์€ ๋งค์šฐ ๋ณต์žกํ•˜๊ณ  ์‹œ๊ฐ„์ด ๋งŽ์ด ๊ฑธ๋ฆฌ๋Š” ์ž‘์—…์ž…๋‹ˆ๋‹ค.

์„ ํƒ์˜ ์ด์œ : ์ €์ž๋Š” ROS ํ†ต์‹  ๊ตฌ์กฐ๋ฅผ ๋ถ„์„ํ•˜๊ณ  ์ดํ•ดํ•˜๋Š” ๋ฐ ์ง‘์ค‘ํ•˜๊ธฐ ์œ„ํ•ด, ๋ณต์žกํ•œ TCP/IP ์Šคํƒ์„ ์ง์ ‘ ์„ค๊ณ„ํ•˜๋Š” ๋Œ€์‹  ์ด๋ฅผ ์ด๋ฏธ ์นฉ ๋‚ด๋ถ€์— ํ•˜๋“œ์›จ์–ด๋กœ ๊ตฌํ˜„ํ•˜๊ณ  ์žˆ๋Š” W5500์„ ์„ ํƒํ•˜์—ฌ ๊ตฌํ˜„ ๋ฐฉ์‹์„ ๋‹จ์ˆœํ™”ํ–ˆ์Šต๋‹ˆ๋‹ค.


2. ๋‹ค์ค‘ ์†Œ์ผ“ ์ง€์› (ROS ํ†ต์‹  ์š”๊ตฌ์‚ฌํ•ญ ์ถฉ์กฑ)

ํ•„์ˆ˜ ์†Œ์ผ“ ์ˆ˜: ํ•˜๋“œ์›จ์–ด ๊ธฐ๋ฐ˜์˜ ROS ํผ๋ธ”๋ฆฌ์…”(Publisher)๋ฅผ ์™„์ „ํžˆ ๊ตฌ๋™ํ•˜๋ ค๋ฉด ์ตœ์†Œ 3๊ฐœ์˜ ์†Œ์ผ“(ํด๋ผ์ด์–ธํŠธ 1๊ฐœ, ์„œ๋ฒ„ 2๊ฐœ)์ด ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค.

W5500์˜ ์„ฑ๋Šฅ: W5500์€ ์ตœ๋Œ€ 8๊ฐœ์˜ ๋…๋ฆฝ์ ์ธ ์†Œ์ผ“์„ ๋™์‹œ์— ์ง€์›ํ•  ์ˆ˜ ์žˆ์–ด, ROS ๋…ธ๋“œ ๊ฐ„์˜ ํ†ต์‹ (๋งˆ์Šคํ„ฐ ๋“ฑ๋ก, ํ† ํ”ฝ ์š”์ฒญ, ๋ฐ์ดํ„ฐ ์ „์†ก ๋“ฑ)์— ํ•„์š”ํ•œ ๋‹ค์ค‘ ์—ฐ๊ฒฐ์„ ์ถฉ๋ถ„ํžˆ ์ฒ˜๋ฆฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

 

3. ํ•˜๋“œ์›จ์–ด ๋ฆฌ์†Œ์Šค ํšจ์œจ์„ฑ ๋ฐ ๋…๋ฆฝ์„ฑ

ํ”„๋กœ์„ธ์„œ ๋ฐฐ์ œ: W5500์„ ์‚ฌ์šฉํ•จ์œผ๋กœ์จ ๊ธฐ์กด์˜ ์†Œํ”„ํŠธ์›จ์–ด ๋ฐฉ์‹(PetaLinux ์ƒ์˜ ROS)๊ณผ ๋‹ฌ๋ฆฌ ๋ฉ”์ธ ํ”„๋กœ์„ธ์„œ(PS)์˜ ๋„์›€ ์—†์ด๋„ ๋„คํŠธ์›Œํฌ ํ†ต์‹ ์ด ๊ฐ€๋Šฅํ•ด์กŒ์Šต๋‹ˆ๋‹ค.

ํ•˜๋“œ์›จ์–ด ์ปจํŠธ๋กค๋Ÿฌ: FPGA ๋‚ด๋ถ€์— W5500์„ ์ œ์–ดํ•˜๊ธฐ ์œ„ํ•œ SPI ๋งˆ์Šคํ„ฐ FSM(์œ ํ•œ ์ƒํƒœ ๋จธ์‹ )์„ ์„ค๊ณ„ํ•˜์—ฌ ์žฅ์น˜๋ฅผ ์ œ์–ดํ•˜๋„๋ก ํ•จ์œผ๋กœ์จ ์‹œ์Šคํ…œ์˜ ํ•˜๋“œ์›จ์–ด ๋…๋ฆฝ์„ฑ์„ ํ™•๋ณดํ–ˆ์Šต๋‹ˆ๋‹ค.

 

4. ๊ฐœ๋… ์ฆ๋ช…(PoC) ๋ชฉ์ 

์‹คํ–‰ ๊ฐ€๋Šฅ์„ฑ ํ™•์ธ: ์ด ์—ฐ๊ตฌ๋Š” ROS ์ธํ„ฐํŽ˜์ด์Šค์˜ ํ•˜๋“œ์›จ์–ด ์ด์‹์ด ๊ฐ€๋Šฅํ•˜๋‹ค๋Š” ๊ฒƒ์„ ๋ณด์—ฌ์ฃผ๋Š” '๊ฐœ๋… ์ฆ๋ช…(Proof of Concept)' ๋‹จ๊ณ„์— ์ค‘์ ์„ ๋‘์—ˆ์Šต๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ ๊ฐ€์žฅ ํšจ์œจ์ ์ด๊ณ  ์•ˆ์ •์ ์œผ๋กœ ๋„คํŠธ์›Œํฌ ๊ธฐ๋Šฅ์„ ์ถ”๊ฐ€ํ•  ์ˆ˜ ์žˆ๋Š” ์ˆ˜๋‹จ์œผ๋กœ W5500 ๊ธฐ๋ฐ˜์˜ WIZ850io ๋ชจ๋“ˆ์„ ํ™œ์šฉํ•œ ๊ฒƒ์ž…๋‹ˆ๋‹ค.

์š”์•ฝํ•˜์ž๋ฉด, W5500์€ FPGA์—์„œ ROS ํ†ต์‹ ์— ํ•„์ˆ˜์ ์ธ TCP/IP ๊ธฐ๋Šฅ์„ ํ•˜๋“œ์›จ์–ด์ ์œผ๋กœ ์‰ฝ๊ณ  ๋น ๋ฅด๊ฒŒ ํ†ตํ•ฉํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•ด์ฃผ์–ด, ์—ฐ๊ตฌ์˜ ํ•ต์‹ฌ์ธ ROS ์ธํ„ฐํŽ˜์ด์Šค ์„ค๊ณ„์— ๋” ์ง‘์ค‘ํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•ด์ฃผ๋Š” ๋„๊ตฌ๋กœ ์‚ฌ์šฉ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

Comments

Similar projects you might like

Comments