🎚️ پتانسیومتر کشویی (اسلایدی) (Slide Potentiometer)
| اسم انگلیسی | Slide Potentiometer |
|---|---|
| در ووکوی (Wokwi) | wokwi-slide-potentiometer |
| دسته | 🎛️ کلید، دکمه و ورودی |
| در شبیهساز فارسی | مود ساده (بدون کد) و مود آردوینو · رایگان |
پتانسیومتر کشویی (Slide Potentiometer) همان ولوم است، ولی بهجای چرخیدن، دستهاش روی یک خط عقب و جلو میرود؛ مثل فیدرهای میز میکسر صدا. سه پایه دارد: دو سر نوار مقاومتی و یک لغزنده. چون جای دسته همیشه پیداست، برای ساخت کنترلرهایی مثل میز نور، کنترل سرعت یا یک «فیدر» برای پروژهی موسیقی انتخاب خیلی خوبی است. آردوینو آن را مثل هر ولوم دیگری با analogRead میخواند.
پتانسیومتر کشویی در ووکوی (Wokwi)
شناسهی قطعه wokwi-slide-potentiometer است. تعریف قطعه در بخش parts فایل diagram.json این شکلی است:
{
"type": "wokwi-slide-potentiometer",
"id": "slider1",
"top": -120,
"left": 140,
"attrs": {}
}
این قطعه هم مثل ولوم معمولی دو پایهی تغذیه (یکی برای ۵ ولت، یکی برای GND) و یک پایهی خروجی لغزنده دارد. اسم دقیق پایهها را با نگه داشتن نشانگر ماوس روی هر پایه در ویرایشگر ببین و سیمها را مستقیم از همانجا بکش: پایهی تغذیه به uno:5V، زمین به uno:GND.1 و خروجی به uno:A0. حین اجرا، دسته را با ماوس میکشی و عدد analogRead عوض میشود. اگر فقط میخواهی منطق کد را امتحان کنی، یک wokwi-potentiometer معمولی با پایههای VCC، SIG و GND هم دقیقاً همان بازهی عددها را میدهد. در تینکرکد فارسی هم پتانسیومتر کشویی با پایههای A، W و B، در هر دو مود، رایگان شبیهسازی میشود.
سیمکشی با آردوینو
پروژهی این صفحه یک نشانگر سطح است: هرچه دسته را جلوتر ببری، LEDهای بیشتری از یک ردیف پنجتایی روشن میشوند.
| پایهی قطعه | وصل به |
|---|---|
| سر اول نوار | 5V |
| لغزنده (پایهی خروجی) | A0 |
| سر دوم نوار | GND |
| پنج LED، هر کدام با مقاومت ۲۲۰ اهم | پینهای 3، 4، 5، 6 و 7؛ کاتدها به GND |
کد نمونه
// Level meter: slide pot on A0 lights 0..5 LEDs on pins 3..7
const int LED_PINS[] = {3, 4, 5, 6, 7};
const int COUNT = 5;
void setup() {
for (int i = 0; i < COUNT; i++) {
pinMode(LED_PINS[i], OUTPUT);
}
Serial.begin(9600);
}
void loop() {
int pos = analogRead(A0); // 0..1023
int lit = map(pos, 0, 1024, 0, COUNT + 1); // 0..5, evenly spread
for (int i = 0; i < COUNT; i++) {
digitalWrite(LED_PINS[i], i < lit ? HIGH : LOW);
}
Serial.println(pos);
delay(20);
}
چرا 1024 و COUNT + 1؟ چون map اعداد را گرد نمیکند و رو به پایین میبُرد؛ با این دو عدد، شش حالت صفر تا پنج سهم برابری از مسیر دسته میگیرند. اگر جهت برعکس بود، جای 5V و GND را عوض کن. برای ده LED، همین کد با یک نوار LED دهتایی و COUNT برابر ۱۰ کار میکند.
اشتباههای رایج
- مدل لگاریتمی: روی بدنه A یعنی لگاریتمی (مخصوص صدا) و B یعنی خطی. با مدل A بیشتر تغییر عدد در انتهای مسیر جمع میشود.
- لغزنده به تغذیه: اگر پایهی خروجی را به 5V و یکی از سرها را به GND بزنی، با رسیدن دسته به آن سر، 5V مستقیم به GND اتصال کوتاه میشود.
- پرش عدد: لغزندههای ارزان کمی نویز دارند؛ میانگین چند خواندن یا نادیده گرفتن تغییرهای خیلی کوچک مشکل را حل میکند.
آموزشهای مرتبط
- پتانسیومتر چرخان در ووکوی
- نمودار سریال برای دیدن حرکت دسته
- analogRead در ESP32 با پتانسیومتر
- ۴۰ مدار آردوینو برای ووکوی
سؤالهای رایج
پتانسیومتر کشویی با پتانسیومتر چرخان چه فرقی دارد؟
از نظر برقی یکیاند: دو سر ثابت و یک لغزنده. فرق در شکل حرکت است؛ کشویی جای دسته را با یک نگاه نشان میدهد و برای سطح صدا، نور یا سرعت حس بهتری دارد.
چرا عدد پتانسیومتر کشویی من در نیمهی راه خیلی کم است؟
احتمالاً مدل لگاریتمی (حرف A روی بدنه) خریدهای که برای صدا ساخته شده. برای آردوینو مدل خطی (حرف B) را بگیر تا وسط مسیر حدود ۵۱۲ بخوانی.
اسم پایههای پتانسیومتر کشویی در ووکوی چیست؟
سادهترین راه این است که در ویرایشگر ووکوی نشانگر ماوس را روی هر پایه نگه داری تا اسمش را ببینی. دو پایه برای تغذیه و زمیناند و یکی خروجی لغزنده.