خلاصه (Summary)

Hokuyo CHOP برای ارتباط با اسکنرهای لیزری Hokuyo (با رابط سریال یا اترنت) استفاده می‌شود: [محصولات Hokuyo].

این CHOP با همه‌ی اسکنرهای لیزری Hokuyo که از طریق سریال یا اترنت کار می‌کنند سازگار است، هرچند تنها دستگاه‌هایی که به‌طور داخلی تست شده‌اند عبارت‌اند از:

  • URG-04LX-UG01 (سریال)

  • UST-10LX (اترنت)

این CHOP می‌تواند همراه با Blob Track CHOP برای شناسایی اجسام در میدان دید اسکنر استفاده شود. (به Snippet مربوط به Blob Track مراجعه کنید).

در سیستم‌عامل ویندوز، همه‌ی پورت‌های سریال موجود کامپیوتر در Device Manager قابل مشاهده‌اند و نام آن‌ها با “COM” شروع می‌شود. مثال: COM1، COM2، COM3 و …

خروجی Hokuyo CHOP داده‌های اندازه‌گیری‌شده از اسکن لیزر است (بر حسب متر)، که می‌تواند در مختصات قطبی (Polar) یا دکارتی (Cartesian) باشد.

  • اسکن لیزر به‌صورت پادساعتگرد در بازه‌ای از درجه‌ها انجام می‌شود (این بازه توسط دستگاه تعریف می‌شود: مثلاً URG-04LX-UG01 = 240 درجه، UST-10LX = 270 درجه).

  • نتیجه، فاصله تا اولین جسمی است که پرتو لیزر در آن زاویه به آن برخورد می‌کند.

رزولوشن زاویه‌ای (Angular Resolution):

  • URG-04LX-UG01 → هر ~0.3515 درجه یک نقطه داده → در مجموع 682 نقطه در یک اسکن 240 درجه‌ای.

  • UST-10LX → هر 0.25 درجه یک نقطه داده → در مجموع 1080 نقطه در یک اسکن 270 درجه‌ای.

  • اسکنرها همچنین Start Step و End Step دارند که بازه تشخیص کلی را تعریف می‌کند.

مدل UST-10LX دارای پارامترهای مشابه با UTM-30LX است. مدل UST-20LX Ethernet نیز مانند UST-10LX عمل می‌کند.

📊 برای بصری‌سازی اسکن و جدول اعداد خاص هر دستگاه، به تصویر “Scan info.jpg” مراجعه کنید.

⚠️ اگر دستگاه Hokuyo از نوع اترنت باشد (مانند UTM-30LX-EW)، مطمئن شوید که Firewall ویندوز آن را مسدود نکرده باشد. هر نصب جداگانه از TouchDesigner باید به‌طور جداگانه در فایروال مجاز شود. (گاهی اوقات پنجره‌ی “Allow TD to network” در اولین اتصال باز نمی‌شود). برای تست، می‌توانید موقتاً فایروال را غیرفعال کنید.

همچنین ببینید: Serial DAT، serialDAT_Class، Arduino


پارامترها – صفحه Connect

  • Active (active): اتصال به سنسور Hokuyo را فعال می‌کند.

  • Interface (interface): ⊞ – انتخاب رابط دستگاه:

    • Serial (serial): فعال‌سازی ارتباط سریال + پارامتر Serial Port

    • Ethernet (ethernet): فعال‌سازی ارتباط اترنت + پارامتر Network Address

  • Serial Port (port): انتخاب پورت COM برای اتصال سریال. (نام‌های پیش‌فرض 1 تا 8 موجود هستند، ولی هر نامی را می‌توان به‌صورت دستی وارد کرد).

  • Network Address (netaddress): آدرس شبکه اسکنر لیزری. (پیش‌فرض دستگاه UST-10LX = 192.168.0.10).

  • High Sensitivity (highsensitivity): فعال‌سازی حالت حساسیت بالا. این حالت توانایی تشخیص را افزایش می‌دهد اما احتمال خطای اندازه‌گیری هم بیشتر می‌شود. (فقط روی دستگاه‌های سریال).

  • Motor Speed (motorspeed): تغییر سرعت موتور اسکنر لیزری. این پارامتر زمانی مفید است که چند اسکنر در یک محیط استفاده شوند (برای جلوگیری از تداخل نوری). (فقط روی دستگاه‌های سریال).

  • Start Step (startstep): نقطه شروع داده‌های اسکن. باید بین اولین و آخرین نقطه اندازه‌گیری باشد و از End Step کمتر یا مساوی آن باشد.

    • پیش‌فرض در UST-10LX = 0

    • در URG-04LX-UG01 باید ≥ 44 باشد.

  • End Step (endstep): نقطه پایان داده‌های اسکن. باید بین اولین و آخرین نقطه اندازه‌گیری باشد و از Start Step بیشتر یا مساوی آن باشد.

    • پیش‌فرض در UST-10LX = 1080

    • در URG-04LX-UG01 باید ≤ 725 باشد.

  • Output (output): ⊞ – نوع خروجی داده‌های اسکن:

    • Polar Coordinates (polarcoords): خروجی فاصله تا اولین جسم برخوردی در هر زاویه (درجه).

    • Cartesian Coordinates (cartesiancoords): خروجی مختصات X و Y اجسام شناسایی‌شده (با مرکز دستگاه به‌عنوان مبدأ).


پارامترها – صفحه Common

  • Time Slice (timeslice): روشن کردن این گزینه باعث می‌شود کانال‌ها به‌صورت Time Sliced محاسبه شوند. (Time Slice = فاصله بین آخرین فریم Cook و فریم فعلی).

  • Scope (scope): مشخص می‌کند کدام کانال‌ها تحت تأثیر قرار گیرند.

Sample Rate Match (srselect): ⊞ – برای زمانی که نرخ نمونه‌برداری ورودی‌های مختلف متفاوت است:

  • Resample At First Input’s Rate (first): استفاده از نرخ ورودی اول.

  • Resample At Maximum Rate (max): بازنمونه‌گیری به بالاترین نرخ.

  • Resample At Minimum Rate (min): بازنمونه‌گیری به پایین‌ترین نرخ.

  • Error If Rates Differ (err): عدم پذیرش نرخ‌های متناقض.

Export Method (exportmethod): ⊞ – نحوه اتصال کانال CHOP به پارامتر:

  • DAT Table by Index (datindex): ارجاع از طریق ایندکس در جدول DAT.

  • DAT Table by Name (datname): ارجاع از طریق نام کانال در جدول DAT.

  • Channel Name is Path:Parameter (autoname): نام کانال مسیر کامل مقصد را مشخص می‌کند (مثال: geo1/transform1:tx).

Export Root (autoexportroot): مسیر پایه برای همه‌ی مسیرهای نسبی در حالت Export.

Export Table (exporttable): جدولی در DAT که اطلاعات Export را نگه‌داری می‌کند.


کانال‌های Info CHOP

اطلاعات اضافه Hokuyo CHOP از طریق Info CHOP در دسترس است.

کانال‌های اختصاصی Hokuyo CHOP

  • incoming_data_packets: بسته‌های داده ورودی

  • data_packets_per_second: تعداد بسته‌های داده در ثانیه

  • dropped_data_packets: تعداد بسته‌های داده از دست‌رفته

Common CHOP Info Channels

  • start: شروع بازه CHOP برحسب نمونه‌ها

  • length: تعداد نمونه‌ها در CHOP

  • sample_rate: نرخ نمونه‌برداری کانال‌ها (فریم بر ثانیه)

  • num_channels: تعداد کانال‌ها در CHOP

  • time_slice: اگر Time Slice فعال باشد = 1، در غیر این صورت = 0

  • export_sernum: تعداد دفعات به‌روزرسانی اتصالات Export

Common Operator Info Channels

  • total_cooks: تعداد دفعات Cook از شروع

  • cook_time: مدت Cook آخر (ms)

  • cook_frame: شماره فریم Cook آخر نسبت به تایم‌لاین کامپوننت

  • cook_abs_frame: شماره فریم Cook آخر نسبت به زمان مطلق

  • cook_start_time: زمان شروع Cook در آن فریم (ms)

  • cook_end_time: زمان پایان Cook در آن فریم (ms)

  • cooked_this_frame: اگر در این فریم Cook شده باشد = 1

  • warnings: تعداد هشدارها (در صورت وجود)

  • errors: تعداد خطاها (در صورت وجود)