🧭 خلاصه (Summary)

Laser CHOP کانال‌هایی تولید می‌کند که می‌توانند پروژکتور لیزری را کنترل کنند.
این نود از نقاط و خطوط موجود در یک SOP یا CHOP استفاده می‌کند و خروجی را در نرخ نمونه‌گیری مشخص (معمولاً بین ‎10,000 تا ‎96,000 نمونه در ثانیه) تولید می‌نماید.

این CHOP کنترل دقیقی بر حرکت آینه‌های بازتاب‌دهنده‌ی پروژکتور لیزری و همچنین کنترل بهبود یافته‌ی رنگ ارائه می‌دهد — از جمله:

  • حفظ صاف بودن خطوط،

  • جلوگیری از قطع‌شدن یا دوبار کشیده‌شدن نقاط انتهایی،

  • حذف دنباله‌های ناخواسته (tails)،
    که همگی از طریق مجموعه‌ای از پارامترها قابل تنظیم هستند.


🔹 هنگام ارسال داده‌ها از یک CHOP دیگر به Laser CHOP:

  • باید کانال‌های x و y وجود داشته باشند (هر نمونه، یک نقطه برای ترسیم است).

  • برای ترسیم چند شکل، از کانالی به نام id استفاده می‌شود:

    • نقاط با id = 0 → شکل اول

    • نقاط با id = 1 → شکل دوم

  • سایر کانال‌ها به‌عنوان کانال‌های رنگی تفسیر می‌شوند (مثلاً r، g، b یا رنگ‌های دیگر برای لیزرهای چنددیودی).

  • کانال‌های خروجی از Laser CHOP را می‌توان:

    • به Laser Device CHOP (برای ارتباط با لیزر از طریق پروتکل ILDA)

    • یا به Audio Device Out CHOP (برای دستگاه‌های AVB مانند MOTU، RME، LaserAnimation Sollinger یا macOS)
      متصل کرد.


💡 نکته فنی:

دستگاه‌های LaserAnimation Sollinger AVB2ILDA امکانات حرفه‌ای زیر را ارائه می‌دهند:

  • دقت ۲۴ بیتی برای سیگنال‌های X/Y و تمام کانال‌های رنگی.

  • Electronic Masking برای محدود کردن خروجی لیزر در نواحی خاص (مثل سالن یا نواحی اپتیکی حساس).

  • ابزار Color Correction با تنظیم تأخیر رنگ هر کانال به‌صورت جداگانه.

  • Digital Geometric Correction برای تصحیح انحرافات هندسی هنگام پروجکت روی سطوح ناهموار.


⚠️ این CHOP با همکاری شرکت LaserAnimation Sollinger توسعه یافته است تا پارامترهای بلنکینگ و تأخیر را دقیقاً مطابق استانداردهای صنعتی پیاده‌سازی کند.

🔸 برای نمونه‌های آماده تنظیم و استفاده، به OP Snippets مراجعه کنید.


⚠️ هشدار ایمنی

لیزرها خطرناک هستند — آسیب به بینایی شما یا تماشاگران کاملاً ممکن است.

پیش از استفاده از لیزر:

  1. تمام قوانین و مقررات ایمنی نوری منطقه خود را بدانید.

  2. مدرک Laser Safety Officer (افسر ایمنی لیزر) بگیرید (در بعضی کشورها اجباری است).
    → دوره‌های رسمی توسط ILDA ارائه می‌شوند.

  3. همیشه دکمه توقف اضطراری (Emergency Stop) نزدیک خود داشته باشید.

  4. اجازه ندهید کسی وارد محدوده پرتاب لیزر شود مگر اینکه همه تدابیر ایمنی اجرا شده باشد.

  5. اطمینان حاصل کنید هیچ سطح بازتابنده‌ای در محیط وجود ندارد که باعث بازتاب ناخواسته‌ی پرتو شود.

🔹 Laser CHOP جایگزین Scan CHOP قدیمی شده است.


⚙️ پارامترها

🔸 Laser Page

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

  • Source OP (source): تعیین نوع منبع لیزر:

    • SOP: مسیر SOP ورودی.

    • CHOP: مسیر CHOP ورودی (باید دارای کانال‌های x، y و ترجیحاً z، r، g، b و id باشد).

  • Input Sample Rate (inputrate): نرخ نمونه‌گیری منبع ورودی.

  • Output Sample Rate (outputrate): نرخ نمونه‌گیری خروجی (معمولاً 48000 Hz).

  • Swap Output (swap): جابجایی محورهای X و Y.

  • X/Y Scale: کنترل مقیاس افقی و عمودی خروجی.

  • Rotate (rotate): چرخش خروجی.

  • Update Method (updatemethod):

    • When All Points Drawn: داده جدید پس از اتمام ترسیم فریم قبلی گرفته می‌شود.

    • Every Frame: داده جدید در هر فریم دریافت می‌شود (مفید برای تصاویر با نرخ بالا یا لیزرهای سریع).

  • Frame Start Pulse (startpulse): افزودن نمونه آغازین برای شروع فریم.

  • Vertex Order (vertexorder): ترسیم نقاط به‌ترتیب رأس‌های پلی‌گان.

  • Step Size (stepsize): حداکثر فاصله تغییر در حین ترسیم رنگ.

  • Blanking Step Size (bstepsize): فاصله تغییر در حالت خاموشی رنگ.

  • Min / Max Vertex Hold: زمان نگهداری پرتو در نقاط (متناسب با زاویه بین سه نقطه).

  • Camera (camera): مسیر به Camera COMP برای پروجکشن دید دوربین.


🔸 Color Page

این بخش تنظیمات مربوط به رنگ و بلنکینگ را کنترل می‌کند.

🔹 Blanking یعنی توانایی روشن/خاموش کردن سریع پرتو هنگام حرکت بین اشکال.
در صورت ناهماهنگی بلنکینگ، ممکن است “دنباله نوری (Tail)” یا “نقاط سوخته” دیده شوند.

  • Red / Green / Blue Scale: شدت هر رنگ.

  • Pre/Post Blanking On/Off Delay: تنظیم تأخیرهای زمانی (ms) برای روشن و خاموش شدن پرتو.

  • Start-Point Hold Time: مدت مکث در ابتدای فریم.

  • Color Delay: تأخیر کلی رنگ‌ها نسبت به موقعیت.


🔸 Common Page

  • Time Slice: فعال‌سازی پردازش بر اساس بازه زمانی بین فریم‌ها.

  • Scope: انتخاب کانال‌هایی که تحت‌تأثیر قرار می‌گیرند.

  • Sample Rate Match: هماهنگی نرخ نمونه بین ورودی‌ها:

    • First / Max / Min / Error if Differ.

  • Export Method: روش اتصال کانال‌ها به پارامترهای دیگر (DAT یا نام مسیر).

  • Export Root / Export Table: تنظیم مسیر و جدول خروجی.


📊 Info CHOP Channels

🔹 Common CHOP Info Channels

  • start → شروع بازه CHOP (بر حسب نمونه).

  • length → تعداد نمونه‌ها.

  • sample_rate → نرخ نمونه‌گیری (fps).

  • num_channels → تعداد کانال‌ها.

  • time_slice → آیا Time Slice فعال است یا نه.

  • export_sernum → دفعات به‌روزرسانی اتصال خروجی‌ها.

🔹 Common Operator Info Channels

  • total_cooks → تعداد دفعات Cook.

  • cook_time → مدت زمان آخرین Cook.

  • cook_frame / cook_abs_frame → شماره فریم آخرین Cook.

  • cook_start_time / cook_end_time → زمان شروع و پایان Cook.

  • cooked_this_frame → آیا در این فریم Cook شده است.

  • warnings / errors → تعداد هشدارها و خطاها.