خلاصه

Count CHOP تعداد دفعاتی را می‌شمارد که یک کانال از آستانه تریگر (Trigger) یا آزادسازی (Release) عبور می‌کند. این عملگر می‌تواند در حالت استاتیک یا در حالت بلادرنگ (Realtime – «Cook to Current Frame») کار کند.

به‌طور پیش‌فرض مقدار تریگر برابر 0 است. بنابراین شمارش زمانی انجام می‌شود که ورودی از مقداری کمتر یا مساوی صفر به مقداری بزرگ‌تر از صفر تغییر کند.

عبور از آستانه تریگر (افزایش از سطح تریگر) یک رویداد تریگر ایجاد می‌کند. به‌طور مشابه، عبور از آستانه آزادسازی (کاهش از سطح Release) یک رویداد Release ایجاد می‌کند. همچنین می‌توان عملیاتی را در زمانی که ورودی بالاتر یا پایین‌تر از آستانه‌ها باقی می‌ماند انجام داد. در هر رویداد، شمارنده می‌تواند ۱ واحد افزایش یا کاهش یابد، بر اساس زمان تغییر کند، یا ریست به صفر شود. (مدت زمان هر نمونه بسته به نرخ نمونه‌برداری تغییر می‌کند؛ مثلاً در 100 نمونه بر ثانیه، هر نمونه برابر با 1/100 ثانیه خواهد بود.)

  • ورودی دوم (اختیاری) ورودی ریست است. اولین کانال به‌عنوان کانالی که شامل پالس‌های ریست است تفسیر می‌شود. هر زمان این کانال غیر صفر شود، شمارش تمام کانال‌ها ریست می‌شود.

  • ورودی سوم با نام Increment Value امکان تعیین مقدار افزایش/کاهش متفاوت از پیش‌فرض (±1) را می‌دهد. مثلاً اگر بخواهید شمارش بر اساس ۵ باشد، کانالی با مقدار ۵ به این ورودی بدهید. در این حالت شمارنده در هر شمارش یا بر اساس زمان (بسته به منوهای صفحه دوم) به میزان ۵ افزایش می‌یابد.


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

  • Release = Trigger Threshold (threshold) – اگر فعال باشد، همان مقدار آستانه تریگر به‌عنوان آستانه Release نیز استفاده می‌شود.

  • Trigger Threshold (threshup) – سطحی که کانال باید از آن عبور کند تا شمارش فعال شود.

  • Release Threshold (threshdown) – شمارش آزادسازی زمانی فعال می‌شود که سطح کانال از این مقدار پایین‌تر برود.

  • Re-Trigger Delay (retrigger) – مدت زمانی که پس از یک تریگر باید بگذرد تا تریگر جدید مجاز باشد.

  • Re-Trigger Delay Unit (retriggerunit) – واحد زمانی تأخیر تریگر مجدد.

  • Trigger On (triggeron) – ⊞ – مشخص می‌کند که رویداد تریگر هنگام گذر از آستانه در شیب صعودی رخ دهد یا نزولی. رویداد Release در شیب مخالف اتفاق می‌افتد.


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

  • Limit (output) – ⊞ – تنظیم محدودیت خروجی (Loop و Clamp):

    • Off – بدون محدودیت.

    • Loop Min/Max (loop) – بین مقادیر حداقل و حداکثر در یک چرخه می‌چرخد.

    • Clamp Min/Max (min) – مقدار شمارنده در حداقل یا حداکثر ثابت می‌ماند.

    • Loop Min, Clamp Max (lc) – شمارش از حداقل لوپ شده و در حداکثر Clamp می‌شود.

    • Clamp Min, Loop Max (cl) – شمارش از حداکثر لوپ شده و در حداقل Clamp می‌شود.

  • Limit Minimum (limitmin) – حداقل مقدار مجاز شمارش.

  • Limit Maximum (limitmax) – حداکثر مقدار مجاز شمارش.

  • Off to On (offtoon) – ⊞ – عملی که هنگام رویداد تریگر (خاموش به روشن) انجام می‌شود:

    • None

    • Increase Count

    • Decrease Count

    • Increase Count by Time

    • Decrease Count by Time

    • Reset Count to Zero

  • While On (on) – ⊞ – عملی که در طول فعال بودن ورودی انجام می‌شود:

    • None

    • Increase Count

    • Decrease Count

    • Increase Count by Time

    • Decrease Count by Time

    • Reset Count to Zero

  • On to Off (ontooff) – ⊞ – عملی که هنگام رویداد Release (روشن به خاموش) انجام می‌شود:

    • None

    • Increase Count

    • Decrease Count

    • Increase Count by Time

    • Decrease Count by Time

    • Reset Count to Zero

  • While Off (off) – ⊞ – عملی که در طول غیرفعال بودن ورودی انجام می‌شود:

    • None

    • Increase Count

    • Decrease Count

    • Increase Count by Time

    • Decrease Count by Time

    • Reset Count to Zero

(توجه: اسکریپت‌ها نسبت به نود والد CHOP اجرا می‌شوند.)

  • Reset Condition (resetcondition) – ⊞ – تعیین نحوه عملکرد ورودی Reset:

    • Off to On – وقتی ورودی Reset از خاموش به روشن تغییر کند.

    • While On – وقتی ورودی Reset روشن باشد؛ تا زمان خاموش شدن ورودی، کانال‌ها روی مقدار Reset نگه داشته می‌شوند.

    • On to Off – وقتی ورودی Reset از روشن به خاموش تغییر کند.

    • While Off – وقتی ورودی Reset خاموش باشد؛ تا زمان روشن شدن ورودی، کانال‌ها روی مقدار Reset نگه داشته می‌شوند.

  • Reset Value (resetvalue) – مقداری که کانال‌ها هنگام ریست روی آن قرار می‌گیرند.

  • Reset (reset) – وقتی روشن باشد، کانال‌ها روی مقدار Reset Value ریست می‌شوند. شمارش تنها زمانی ادامه می‌یابد که Reset خاموش باشد.

  • Reset Pulse (resetpulse) – بلافاصله کانال‌ها را به مقدار Reset Value ریست می‌کند.


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

  • Time Slice (timeslice) – اگر فعال شود، کانال‌ها به صورت Time Slice پردازش می‌شوند (فاصله بین آخرین فریم Cook و فریم فعلی).

  • Scope (scope) – تعیین می‌کند کدام کانال‌ها تحت تأثیر قرار بگیرند (با استفاده از Pattern Matching).

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

    • Resample At First Input’s Rate

    • Resample At Maximum Rate

    • Resample At Minimum Rate

    • Error If Rates Differ

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

    • DAT Table by Index

    • DAT Table by Name

    • Channel Name is Path:Parameter

  • Export Root (autoexportroot) – مسیر ریشه برای خروجی کانال‌ها.

  • Export Table (exporttable) – جدول DAT که اطلاعات خروجی در آن نگهداری می‌شود.


ورودی‌های عملگر

  • Input 0 – کانال اصلی شمارش.

  • Input 1 – ورودی ریست.

  • Input 2 – مقدار افزایش (Increment Value).


کانال‌های Info CHOP

اطلاعات اضافی Count CHOP از طریق یک Info CHOP قابل دسترسی است.

Common CHOP Info Channels

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

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

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

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

  • time_slice – اگر Time Slice فعال باشد مقدار 1، در غیر این صورت 0.

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

Common Operator Info Channels

  • total_cooks – تعداد دفعات اجرای عملگر از ابتدای پردازش.

  • cook_time – مدت زمان آخرین Cook (میلی‌ثانیه).

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

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

  • cook_start_time – زمان شروع Cook (میلی‌ثانیه).

  • cook_end_time – زمان پایان Cook (میلی‌ثانیه).

  • cooked_this_frame – اگر در این فریم پردازش شده باشد، مقدار 1.

  • warnings – تعداد هشدارهای این عملگر.

  • errors – تعداد خطاهای این عملگر.