











نقشه ماژول اپتوکوپلر تک حالته
50,000 تومانهر فایل
ماژول اپتوکوپلر تکحالته یک راهحل ایدهآل برای ایزوله کردن سیگنالهای الکتریکی در سیستمهای قدرت و کنترل است.
با استفاده از نور به عنوان واسطه انتقال، این ماژول جداسازی گالوانیکی کامل بین مدارهای ورودی و خروجی ایجاد میکند.
5,000,000 تومان را به سبد خرید اضافه کنید و ارسال رایگان دریافت کنید!
Size and packaging guidelines
| یکا (واحد) | علامت اختصاری | شرح انگلیسی | مقدار |
| 1 متر | m | Meter | 1 |
| 1 سانتی متر | cm | Canti Meter | 2-^10 |
| 1 میلی متر | mm | Mili Meter | 3-^10 |
| 1 اینچ | in | Inch | 2.54cm |
| 2 اینچ | in | Inch | 5.08cm |
| 3 اینچ | in | Inch | 7.62cm |
| 5 اینچ | in | Inch | 12.7cm |
ماژول اپتوکوپلر تک حالته
A Optocoupler Module
جداساز امن و مطمئن سیگنالهای الکتریکی
لیست المان های NSE-OPT1
| Quantity | Code | Symbol |
|---|---|---|
| 1 | Optocoupler PS817 | OPT |
| 2 | 3.3K | R |
| 1 | 3mm LED | LED |
| 1 | Jumper | J |
| 2 | Connector Box 2pin | CB |
| 2Pin | Pin Header 1x2 SIL Straight Male | PH |
| 3cm x 1.5cm | Single Side with Solder Mask and Helper | PCB |
⚡ اپتوکوپلر تکحالته: پل نوری برای جداسازی الکتریکی ایمن
ماژول اپتوکوپلر تکحالته یک راهحل ایدهآل برای ایزوله کردن سیگنالهای الکتریکی در سیستمهای قدرت و کنترل است. با استفاده از نور به عنوان واسطه انتقال، این ماژول جداسازی گالوانیکی کامل بین مدارهای ورودی و خروجی ایجاد میکند.
🛡️ مزایای کلیدی اپتوکوپلر
🔌 جداسازی الکتریکی کامل:
ایزولاسیون گالوانیکی: جداسازی کامل ورودی و خروجی
مقاومت عایقی: تا 5000V RMS
جلوگیری از نویز: حذف نویزهای زمین مشترک
محافظت در برابر اسپایک: جلوگیری از انتقال نوسانات ولتاژ
⚡ عملکرد قابل اعتماد:
سرعت پاسخ بالا: تا 100 کیلوهرتز
طول عمر طولانی: بدون تماس مکانیکی
پایداری حرارتی: عملکرد مطمئن در دمای -40°C تا +100°C
مصرف برق پایین: جریان LED معمولاً 5-20mA
📊 مشخصات فنی استاندارد
پارامترهای الکتریکی:
ولتاژ ایزولاسین: 2500Vrms تا 5000Vrms
ولتاژ ورودی LED: 1.2V – 1.7V (نقطه کار)
جریان ورودی: 5mA – 50mA (توصیه شده)
ولتاژ خروجی: تا 30V (بسته به نوع ترانزیستور)
جریان خروجی: 50mA – 100mA (پیوسته)
CTR (نسبت انتقال جریان): 20% – 600%
پارامترهای عملکردی:
زمان پاسخ:
زمان روشن شدن (Ton): 2µs – 20µs
زمان خاموش شدن (Toff): 3µs – 30µs
فرکانس کاری: تا 100kHz
دمای کاری: -40°C تا +100°C
مقاومت عایقی: >10¹¹ Ω
انواع رایج اپتوکوپلر تکحالته:
PC817: پرکاربردترین، CTR: 80%-600%
4N25: عمومیپurpose، ولتاژ ایزولاسین 2500V
TLP521: سرعت متوسط، CTR بالا
SFH6106: ولتاژ ایزولاسین 5000V
MOC3021: با تریاک خروجی برای کنترل AC
🔧 ساختار و طراح داخلی
ساختمان اپتوکوپلر:
ساختار داخلی:
ورودی → [LED مادون قرمز] → [نور] → [فوتوترانزیستور] → خروجی
↓ ↓ ↓ ↓ ↓
سیگنال فرستنده محیط عایق گیرنده سیگتال
کنترل نوری (پلاستیک نوری ایزوله
یا هوای (فتوترانزیستور)
خشک)پیکربندی پایههای DIP-4:
پیکربندی استاندارد 4 پایه:
┌───┐
1 │ ● │ 4 پایه 1: آند LED
2 │ │ 3 پایه 2: کاتد LED
└───┘ پایه 3: امیتر فوتوترانزیستور
پایه 4: کلکتور فوتوترانزیستور💻 برنامهنویسی و راهاندازی
اتصال پایهها به آردوینو:
// اتصال اپتوکوپلر PC817 #define OPTO_INPUT_PIN 2 // کنترل LED ورودی #define OPTO_OUTPUT_PIN 3 // خواندن خروجی // پینهای اتصال مستقیم (در صورت استفاده بدون ماژول) #define LED_ANODE_PIN 8 // آند LED #define LED_CATHODE_PIN 9 // کاتد LED #define TRANSISTOR_COLLECTOR_PIN 10 // کلکتور #define TRANSISTOR_EMITTER_PIN 11 // امیتر void setupOptocoupler() { Serial.begin(9600); // تنظیم پینهای کنترل pinMode(OPTO_INPUT_PIN, OUTPUT); pinMode(OPTO_OUTPUT_PIN, INPUT); // حالت اولیه digitalWrite(OPTO_INPUT_PIN, LOW); Serial.println("ماژول اپتوکوپلر راهاندازی شد"); Serial.println("============================="); } void testOptocoupler() { // تست عملکرد اپتوکوپلر digitalWrite(OPTO_INPUT_PIN, HIGH); // روشن کردن LED delay(10); // زمان پاسخ bool outputState = digitalRead(OPTO_OUTPUT_PIN); Serial.print("ورودی HIGH - خروجی: "); Serial.println(outputState ? "HIGH" : "LOW"); digitalWrite(OPTO_INPUT_PIN, LOW); // خاموش کردن LED delay(10); // زمان پاسخ outputState = digitalRead(OPTO_OUTPUT_PIN); Serial.print("ورودی LOW - خروجی: "); Serial.println(outputState ? "HIGH" : "LOW"); }
کلاس مدیریت پیشرفته اپتوکوپلر:
class SingleChannelOptocoupler { private: int inputPin; int outputPin; unsigned long responseTime; // میکروثانیه bool isInverting; // true برای خروجی معکوس float ctr; // Current Transfer Ratio (%) public: SingleChannelOptocoupler(int inPin, int outPin, bool invert = false, float ctrValue = 100.0) { inputPin = inPin; outputPin = outPin; isInverting = invert; ctr = ctrValue; responseTime = 10; // 10µs پیشفرض pinMode(inputPin, OUTPUT); pinMode(outputPin, INPUT); // حالت اولیه digitalWrite(inputPin, LOW); } void turnOn() { digitalWrite(inputPin, HIGH); if (responseTime > 0) { delayMicroseconds(responseTime); } } void turnOff() { digitalWrite(inputPin, LOW); if (responseTime > 0) { delayMicroseconds(responseTime); } } bool getOutputState() { bool rawState = digitalRead(outputPin); return isInverting ? !rawState : rawState; } bool isIsolated(bool expectedState) { // تست ایزولاسیون bool currentState = getOutputState(); // خروجی باید معکوس ورودی باشد (در حالت NPN) bool inputState = digitalRead(inputPin); bool shouldBeActive = (inputState == HIGH && !isInverting) || (inputState == LOW && isInverting); return currentState == shouldBeActive; } float calculateCTR() { // محاسبه CTR واقعی float inputCurrent = measureInputCurrent(); float outputCurrent = measureOutputCurrent(); if (inputCurrent > 0) { return (outputCurrent / inputCurrent) * 100.0; } return 0.0; } void setResponseTime(unsigned long timeUs) { responseTime = timeUs; Serial.print("زمان پاسخ تنظیم شد: "); Serial.print(timeUs); Serial.println(" µs"); } void pulseTest(unsigned int pulseWidthUs, int count = 10) { Serial.println("=== تست پالس ==="); for (int i = 0; i < count; i++) { unsigned long startTime = micros(); turnOn(); bool onState = getOutputState(); delayMicroseconds(pulseWidthUs); turnOff(); bool offState = getOutputState(); unsigned long endTime = micros(); unsigned long actualPulseWidth = endTime - startTime; Serial.print("پالس "); Serial.print(i + 1); Serial.print(": عرض "); Serial.print(actualPulseWidth); Serial.print("µs | خروجی روشن: "); Serial.print(onState); Serial.print(" | خروجی خاموش: "); Serial.println(offState); delay(100); // فاصله بین پالسها } } void measureResponseTimes() { Serial.println("=== اندازهگیری زمانهای پاسخ ==="); // زمان روشن شدن unsigned long turnOnStart = micros(); turnOn(); unsigned long turnOnTime = micros() - turnOnStart; // زمان خاموش شدن unsigned long turnOffStart = micros(); turnOff(); unsigned long turnOffTime = micros() - turnOffStart; Serial.print("Ton: "); Serial.print(turnOnTime); Serial.print("µs | Toff: "); Serial.print(turnOffTime); Serial.println("µs"); } bool healthCheck() { // بررسی سلامت اپتوکوپلر bool test1 = isolationTest(); bool test2 = ctrTest(); bool test3 = responseTest(); Serial.println("=== بررسی سلامت اپتوکوپلر ==="); Serial.print("تست ایزولاسیون: "); Serial.println(test1 ? "✅ PASS" : "❌ FAIL"); Serial.print("تست CTR: "); Serial.println(test2 ? "✅ PASS" : "❌ FAIL"); Serial.print("تست پاسخ: "); Serial.println(test3 ? "✅ PASS" : "❌ FAIL"); return test1 && test2 && test3; } };
⚙️ کاربردهای عملی
۱. ایزوله کردن سیگنالهای دیجیتال:
class DigitalIsolator { private: SingleChannelOptocoupler opto; bool lastState; public: DigitalIsolator(int inPin, int outPin) : opto(inPin, outPin) { lastState = false; } void transmit(bool state) { if (state != lastState) { if (state) { opto.turnOn(); } else { opto.turnOff(); } lastState = state; } } bool receive() { return opto.getOutputState(); } void sendPulse(unsigned int durationMs) { opto.turnOn(); delay(durationMs); opto.turnOff(); } void sendSerialData(const String& data, int baudRate = 9600) { int bitTime = 1000000 / baudRate; // میکروثانیه for (int i = 0; i < data.length(); i++) { char c = data.charAt(i); // Start bit opto.turnOff(); delayMicroseconds(bitTime); // Data bits (8 bits) for (int bit = 0; bit < 8; bit++) { bool bitValue = (c >> bit) & 0x01; if (bitValue) { opto.turnOn(); } else { opto.turnOff(); } delayMicroseconds(bitTime); } // Stop bit opto.turnOn(); delayMicroseconds(bitTime * 2); // دو بیت توقف } } }; // استفاده برای ایزوله کردن ارتباط سریال DigitalIsolator serialIsolator(2, 3); void setup() { Serial.begin(9600); } void loop() { if (Serial.available()) { String data = Serial.readString(); serialIsolator.sendSerialData(data); } }
۲. کنترل رله یا بارهای AC:
class ACLoadController { private: SingleChannelOptocoupler opto; int triacPin; bool zeroCrossingDetected; public: ACLoadController(int optoIn, int optoOut, int triac) : opto(optoIn, optoOut), triacPin(triac) { zeroCrossingDetected = false; pinMode(triacPin, OUTPUT); // تنظیم وقفه برای تشخیص عبور از صفر attachInterrupt(digitalPinToInterrupt(2), zeroCrossingISR, RISING); } static void zeroCrossingISR() { // این تابع در عبور از صفر AC فراخوانی میشود // باید با متغیرهای استاتیک پیادهسازی شود } void turnOnAC() { // روشن کردن در عبور از صفر waitForZeroCrossing(); digitalWrite(triacPin, HIGH); opto.turnOn(); } void turnOffAC() { // خاموش کردن در عبور از صفر waitForZeroCrossing(); digitalWrite(triacPin, LOW); opto.turnOff(); } void dimAC(int angle) { // دیمر AC با کنترل فاز angle = constrain(angle, 0, 180); waitForZeroCrossing(); // تأخیر بر اساس زاویه فاز int delayTime = map(angle, 0, 180, 8000, 0); // میکروثانیه delayMicroseconds(delayTime); // تریگر تریاک digitalWrite(triacPin, HIGH); opto.turnOn(); delayMicroseconds(100); // پالس تریگر digitalWrite(triacPin, LOW); opto.turnOff(); } void waitForZeroCrossing() { // انتظار برای عبور از صفر while (!zeroCrossingDetected) { delayMicroseconds(100); } zeroCrossingDetected = false; } };
۳. خواندن سیگنالهای ولتاژ بالا:
class HighVoltageMonitor { private: SingleChannelOptocoupler opto; float voltageDividerRatio; float referenceVoltage; public: HighVoltageMonitor(int optoIn, int optoOut, float ratio, float refVoltage = 5.0) : opto(optoIn, optoOut), voltageDividerRatio(ratio), referenceVoltage(refVoltage) { } bool isVoltagePresent(float thresholdVoltage) { // تبدیل ولتاژ به سیگنال دیجیتال float scaledVoltage = thresholdVoltage / voltageDividerRatio; // در اینجا از مقایسهگر استفاده میشود // برای سادگی، فرض میکنیم ولتاژ بالای آستانه = HIGH return opto.getOutputState(); } float estimateVoltage() { // تخمین ولتاژ بر اساس زمان روشن بودن unsigned long onTime = measureOnTime(); unsigned long period = measurePeriod(); if (period > 0) { float dutyCycle = (float)onTime / period * 100.0; return dutyCycle * voltageDividerRatio * referenceVoltage / 100.0; } return 0.0; } void monitorVoltage(float safeThreshold) { static unsigned long lastAlert = 0; float currentVoltage = estimateVoltage(); if (currentVoltage > safeThreshold) { if (millis() - lastAlert > 5000) { // هر 5 ثانیه lastAlert = millis(); Serial.print("⚠️ ولتاژ بالا: "); Serial.print(currentVoltage, 1); Serial.println("V"); } } } };
🔌 مدارهای کاربردی
مدار پایه برای PC817:
// مدار نمونه برای اتصال PC817 /* مدار پیشنهادی: ورودی: سیگنال → مقاومت 220Ω → پایه 1 (آند) GND → پایه 2 (کاتد) خروجی: پایه 4 (کلکتور) → مقاومت بار → Vcc پایه 3 (امیتر) → GND برای خواندن: نقطه بین کلکتور و مقاومت بار به میکروکنترلر */ void setupPC817Circuit() { Serial.println("مدار PC817 راهاندازی شد"); Serial.println("مقاومت سری LED: 220Ω برای 5V"); Serial.println("مقاومت بار کلکتور: 10KΩ"); Serial.println("پیکربندی: خروجی فعال LOW"); } float calculateLEDResistor(float supplyVoltage, float ledVoltage, float ledCurrent) { // محاسبه مقاومت سری LED // R = (Vsupply - Vled) / Iled return (supplyVoltage - ledVoltage) / ledCurrent; } float calculateCollectorResistor(float supplyVoltage, float collectorCurrent) { // محاسبه مقاومت بار کلکتور // Rc = Vcc / Ic return supplyVoltage / collectorCurrent; }
مدار درایور موتور DC ایزوله:
class IsolatedMotorDriver { private: SingleChannelOptocoupler opto1; // جهت 1 SingleChannelOptocoupler opto2; // جهت 2 int motorPin1, motorPin2; public: IsolatedMotorDriver(int opto1In, int opto1Out, int opto2In, int opto2Out, int pin1, int pin2) : opto1(opto1In, opto1Out), opto2(opto2In, opto2Out) { motorPin1 = pin1; motorPin2 = pin2; pinMode(motorPin1, OUTPUT); pinMode(motorPin2, OUTPUT); } void forward() { opto1.turnOn(); opto2.turnOff(); digitalWrite(motorPin1, HIGH); digitalWrite(motorPin2, LOW); } void reverse() { opto1.turnOff(); opto2.turnOn(); digitalWrite(motorPin1, LOW); digitalWrite(motorPin2, HIGH); } void stop() { opto1.turnOff(); opto2.turnOff(); digitalWrite(motorPin1, LOW); digitalWrite(motorPin2, LOW); } void brake() { opto1.turnOn(); opto2.turnOn(); digitalWrite(motorPin1, HIGH); digitalWrite(motorPin2, HIGH); delay(100); // ترمز کوتاه stop(); } };
⚡ تست و کالیبراسیون
روال تست کامل:
void comprehensiveOptocouplerTest() { SingleChannelOptocoupler opto(2, 3); Serial.println("=== تست جامع اپتوکوپلر ==="); // 1. تست ایزولاسیون Serial.println("1. تست ایزولاسیون:"); testIsolation(opto); // 2. تست CTR Serial.println("\n2. تست نسبت انتقال جریان:"); testCTR(opto); // 3. تست زمان پاسخ Serial.println("\n3. تست زمانهای پاسخ:"); testResponseTimes(opto); // 4. تست فرکانس Serial.println("\n4. تست فرکانس کاری:"); testFrequencyResponse(opto); // 5. تست دمایی Serial.println("\n5. تست پایداری دمایی:"); testTemperatureStability(opto); Serial.println("\n✅ تست کامل شد"); } void testIsolation(SingleChannelOptocoupler& opto) { // تست مقاومت عایقی (به صورت نسبی) bool isolationGood = true; for (int i = 0; i < 10; i++) { // ایجاد نویز روی ورودی analogWrite(9, random(0, 255)); // پین مجاور bool outputState = opto.getOutputState(); bool inputState = digitalRead(opto.inputPin); if (inputState == LOW && outputState == HIGH) { isolationGood = false; Serial.println("❌ نشتی تشخیص داده شد"); break; } } if (isolationGood) { Serial.println("✅ ایزولاسیون صحیح است"); } }
کالیبراسیون CTR:
void calibrateCTR(SingleChannelOptocoupler& opto) { Serial.println("کالیبراسیون CTR:"); float inputCurrents[] = {5.0, 10.0, 15.0, 20.0}; // mA float ctrValues[4]; for (int i = 0; i < 4; i++) { // تنظیم جریان ورودی (با PWM) float pwmValue = (inputCurrents[i] / 20.0) * 255.0; analogWrite(opto.inputPin, pwmValue); delay(100); // خواندن خروجی float outputCurrent = measureOutputCurrent(); ctrValues[i] = (outputCurrent / inputCurrents[i]) * 100.0; Serial.print("Iin="); Serial.print(inputCurrents[i]); Serial.print("mA, CTR="); Serial.print(ctrValues[i], 1); Serial.println("%"); } // محاسبه CTR متوسط float avgCTR = 0.0; for (int i = 0; i < 4; i++) { avgCTR += ctrValues[i]; } avgCTR /= 4.0; Serial.print("CTR متوسط: "); Serial.print(avgCTR, 1); Serial.println("%"); digitalWrite(opto.inputPin, LOW); }
🛡️ ملاحظات ایمنی و حفاظتی
محدودیتهای کاری:
حداکثر ولتاژ ورودی: بسته به نوع، معمولاً 1.2V-1.7V برای LED
حداکثر جریان ورودی: 50mA-100mA (به دیتاشیت مراجعه شود)
حداکثر ولتاژ خروجی: 30V-80V
حداکثر توان تلفاتی: 100mW-250mW
دمای ذخیرهسازی: -55°C تا +125°C
نکات ایمنی مهم:
void safetyGuidelines() { Serial.println("=== دستورالعملهای ایمنی اپتوکوپلر ==="); Serial.println("1. همیشه از مقاومت سری برای LED استفاده کنید"); Serial.println("2. از عبور جریان بیش از حد مجاز خودداری کنید"); Serial.println("3. اطمینان از قطبیت صحیح اتصالات"); Serial.println("4. استفاده از هیتسینک در جریانهای بالا"); Serial.println("5. تست ایزولاسیون قبل از استفاده"); Serial.println("6. رعایت فاصلههای عایقی در PCB"); }
محافظت در برابر شرایط خاص:
class ProtectedOptocoupler { private: SingleChannelOptocoupler opto; int currentSensePin; float maxCurrent; public: ProtectedOptocoupler(int inPin, int outPin, int sensePin, float maxCurrentmA) : opto(inPin, outPin), maxCurrent(maxCurrentmA) { currentSensePin = sensePin; pinMode(currentSensePin, INPUT); } bool safeTurnOn() { float current = measureCurrent(); if (current > maxCurrent) { Serial.println("⚠️ جریان بیش از حد - عملیات لغو شد"); return false; } opto.turnOn(); delayMicroseconds(10); // تأیید روشن شدن if (!opto.getOutputState()) { Serial.println("⚠️ اپتوکوپلر روشن نشد"); return false; } return true; } float measureCurrent() { // خواندن از سنسور جریان int sensorValue = analogRead(currentSensePin); float voltage = sensorValue * (5.0 / 1023.0); return (voltage - 2.5) / 0.185; // برای ACS712 } void emergencyShutdown() { opto.turnOff(); Serial.println("🛑 خاموشی اضطراری فعال شد"); } };
🔍 عیبیابی و تشخیص خطا
مشکلات رایج و راهحل:
| مشکل | علت احتمالی | راهحل | تست تشخیصی |
|---|---|---|---|
| عدم پاسخ | LED سوخته | تعویض | تست دیود با مولتیمتر |
| خروجی همیشه HIGH | فوتوترانزیستور اتصال کوتاه | تعویض | اندازهگیری مقاومت CE |
| خروجی همیشه LOW | CTR پایین یا مدار خارجی | افزایش جریان LED | تست با جریان ورودی بالاتر |
| پاسخ آهسته | خازن پارازیتی | کاهش مقاومتهای سری | تست پالس با اسیلوسکوپ |
| نویز خروجی | نویز ورودی یا تغذیه | فیلترگذاری | بررسی با اسکوپ |
برنامه تشخیص خودکار:
void autoDiagnostic() { Serial.println("=== تشخیص خودکار خطا ==="); // تست LED testLED(); // تست فوتوترانزیستور testPhototransistor(); // تست CTR testCTRBasic(); // تست ایزولاسیون testBasicIsolation(); Serial.println("تشخیص کامل شد"); } void testLED() { Serial.print("تست LED: "); // روشن کردن LED با جریان کم digitalWrite(OPTO_INPUT_PIN, HIGH); delay(10); bool output = digitalRead(OPTO_OUTPUT_PIN); if (output) { Serial.println("✅ سالم"); } else { Serial.println("❌ مشکوک - CTR ممکن است پایین باشد"); } digitalWrite(OPTO_INPUT_PIN, LOW); }
🏭 کاربردهای صنعتی
۱. سیستمهای PLC:
class PLCInputIsolator { private: SingleChannelOptocoupler opto; int inputStatus; public: PLCInputIsolator(int inPin, int outPin) : opto(inPin, outPin) { inputStatus = 0; } int readIsolatedInput() { bool state = opto.getOutputState(); inputStatus = state ? 1 : 0; return inputStatus; } void monitorInput(unsigned long debounceTime = 10) { static unsigned long lastChange = 0; static bool lastState = false; bool currentState = opto.getOutputState(); if (currentState != lastState) { if (millis() - lastChange > debounceTime) { lastChange = millis(); lastState = currentState; Serial.print("ورودی تغییر کرد: "); Serial.println(currentState ? "ACTIVE" : "INACTIVE"); logEvent(currentState); } } } };
۲. اینورترها و درایوهای موتور:
class InverterGateDriver { private: SingleChannelOptocoupler highSideOpto; SingleChannelOptocoupler lowSideOpto; float deadTime; // میکروثانیه public: InverterGateDriver(int highIn, int highOut, int lowIn, int lowOut, float deadTimeUs = 2.0) : highSideOpto(highIn, highOut), lowSideOpto(lowIn, lowOut), deadTime(deadTimeUs) { } void drivePWM(float dutyCycle, float frequency) { // محاسبه زمانهای روشن/خاموش unsigned long period = 1000000 / frequency; // میکروثانیه unsigned long onTime = period * dutyCycle / 100.0; unsigned long offTime = period - onTime - (deadTime * 2); // درایو High Side highSideOpto.turnOn(); delayMicroseconds(onTime); highSideOpto.turnOff(); delayMicroseconds(deadTime); // درایو Low Side lowSideOpto.turnOn(); delayMicroseconds(offTime); lowSideOpto.turnOff(); delayMicroseconds(deadTime); } void enableBoth() { // برای حالت ترمز highSideOpto.turnOn(); lowSideOpto.turnOn(); } void disableBoth() { highSideOpto.turnOff(); lowSideOpto.turnOff(); } };
۳. سیستمهای پزشکی:
class MedicalIsolation { private: SingleChannelOptocoupler opto; bool patientConnected; public: MedicalIsolation(int inPin, int outPin) : opto(inPin, outPin) { patientConnected = false; } bool isPatientConnected() { return patientConnected; } void checkIsolationIntegrity() { // تست ایزولاسیون برای تجهیزات پزشکی float leakageCurrent = measureLeakageCurrent(); if (leakageCurrent > 10.0) { // میکروآمپر Serial.println("⚠️ جریان نشتی بیش از حد مجاز پزشکی"); triggerSafetyShutdown(); } } float measureLeakageCurrent() { // اندازهگیری جریان نشتی // پیادهسازی بسته به مدار return 0.0; } void triggerSafetyShutdown() { opto.turnOff(); Serial.println("🚨 سیستم ایزولاسیون پزشکی خاموش شد"); } };
📦 مشخصات ماژولهای آماده
ماژول اپتوکوپلر تککاناله رایج:
ابعاد: 20mm × 15mm × 10mm
پایهها: هدر 4 پین 2.54mm
اپتوکوپلر: PC817 یا معادل
مقاومتهای نصب شده:
مقاومت LED: 220Ω
مقاومت پایه: 10KΩ
خازن فیلتر: 100nF (در برخی مدلها)
ولتاژ کاری: 3.3V – 5V
جریان خروجی: تا 50mA
پکیج استاندارد:
1 عدد ماژول اپتوکوپلر
4 عدد پایه هدر
2 عدد مقاومت اضافی
راهنمای اتصال سریع
دیاگرام نمونه مدار
🌟 نتیجهگیری
ماژول اپتوکوپلر تکحالته یک ابزار ضروری برای هر پروژهای است که نیاز به جداسازی الکتریکی بین بخشهای مختلف مدار دارد. با ترکیب سادگی، قابلیت اطمینان بالا و هزینه کم، این ماژول در طیف گستردهای از کاربردها از الکترونیک مصرفی تا سیستمهای صنعتی و پزشکی استفاده میشود.
ایمنی در ایزولاسیون، اطمینان در عملکرد
.فقط مشتریانی که این محصول را خریداری کرده اند و وارد سیستم شده اند میتوانند برای این محصول دیدگاه ارسال کنند.
در تهران فقط
پیک موتوری
تحویل حضوری
اداره پست جمهوری اسلامی ایران
پست سفارشی، پیشتاز، بینالمللی، تیپاکس و پست پیشتاز خارج از کشور
در حال حاضر امکان رهگیری مرسوله های پستی با کد مرسوله، دریافت گواهی کد پستی، مشاهده تعرفه های پستی به صورت آنلاین و ... در سایت شرکت ملی پست جمهوری اسلامی ایران فراهم شده است. تمامی مردم می توانند با ورود به این سایت، از خدمات مربوط به شرکت و اداره پست استفاده کنند.
در اداره پست جمهوری اسلامی ایران، برای ارسال مرسولات، روشهای مختلفی وجود دارد که عبارتند از:
۱. پست سفارشی: این روش برای ارسال کالاهای کوچک و سبک و با ارزش کمتر از ۱۰۰ هزار تومان استفاده میشود. در این روش، هزینه ارسال بر اساس وزن و مسافت محاسبه میشود و زمان تحویل ۳ تا ۷ روز کاری است.
۲. پیشتاز: این روش برای ارسال کالاهایی با ارزش بیشتر از ۱۰۰ هزار تومان و یا کالاهایی که به سرعت باید تحویل داده شوند، استفاده میشود. در این روش، هزینه ارسال بر اساس وزن و مسافت محاسبه میشود و زمان تحویل ۱ تا ۳ روز کاری است.
۳. بینالمللی: این روش برای ارسال کالاهایی به خارج از کشور استفاده میشود. در این روش، هزینه ارسال بر اساس وزن و مسافت و هزینه گمرکی محاسبه میشود و زمان تحویل بسته به مقصد و روش ارسال، متفاوت است.
۴. تیپاکس: این روش برای ارسال کالاهایی است که به سرعت باید تحویل داده شوند. در این روش، هزینه ارسال بر اساس وزن و مسافت و زمان تحویل مورد نظر مشتری محاسبه میشود.
۵. پست پیشتاز خارج از کشور: این روش برای ارسال کالاها به خارج از کشور استفاده میشود و هزینه ارسال بر اساس وزن و مسافت و هزینه گمرکی محاسبه میشود.
در کل، برای ارسال مرسوله در اداره پست جمهوری اسلامی ایران، میتوانید یکی از روشهای فوق را انتخاب کنید که بسته به نیاز و شرایط شما، مناسبتر است.



































دیدگاهها
پاککردن فیلترهاهیچ دیدگاهی برای این محصول نوشته نشده است.