به گفته hackster
ظاهر شیک و رابط کاربری تمیز خوب است، اما بدون اجزای درست، کاربردی نخواهند داشت. YouTuber با نام GreatScott! همین را وقتی فهمید که یک مجموعه 10تایی ترموستات خرید تا در نقاط مختلف خانه نصب کند. این ترموستاتها به رلههایی متصلاند که شیرهای موتورخانه را برای گرمایش فعال میکنند؛ پس دقت دمایی حیاتی است. اما به هر دلیلی، قرائت دما هیچوقت دقیق نبود.
ترمیستوری که دردسرساز شده بود (: GreatScott!).
بهجای کنار گذاشتن این ترموستاتهای Wi‑Fi ، GreatScott! قابها را باز کرد تا ریشه مشکل را پیدا کند. مشکل اصلی، یک ترمیستور با ضریب دمایی منفی (NTC thermistor) ارزان بود که برای اندازهگیری دمای محیط استفاده شده بود. ترمیستورهای NTC با تغییر مقاومت الکتریکی نسبت به دما کار میکنند. مدار داخلی ترموستات، ولتاژ روی این ترمیستور را میخوانَد و آن را به دما تبدیل میکند.
برای رفع مشکل، یک چیپ سنجش دقیق دما از نوع دیجیتال با نام WSEN-TIDS انتخاب شد تا جایگزین ترمیستور شود. این سنسور با دقت ±0.25 درجه سلسیوس انتخاب مناسبی است. اما خروجی آن دیجیتال و قابل خواندن از طریق I2C (I2C) است، نه ولتاژ آنالوگ مطابق انتظار ترموستات.
مونتاژ برد جایگزین (: GreatScott!).
برای برقرار کردن ارتباط بین اجزای جدید و مدار قدیمی، GreatScott! یک PCB سفارشی طراحی کرد تا داده سنسور را بخوانَد و معادل ولتاژ آنالوگ موردنیاز ترموستات را تزریق کند. روی این برد، یک میکروکنترلر ATtiny402 برنامهریزی شد تا داده دمایی را دریافت کرده، سپس آن را به یک مقدار دیجیتال متناظر با ولتاژ تبدیل کند. آن مقدار به یک مبدل دیجیتال به آنالوگ (DAC) داده شد تا ولتاژ آنالوگ متناظر تولید شود. این ولتاژ به ورودی ترموستات اعمال شد تا نمایشگر دستگاه دمای درست را نشان دهد.
رسیدن به این نتیجه، آزمون و خطای زیادی خواست؛ چون کد منبع فریمور (Firmware) میکروکنترلر امبدد روی خود ترموستات در دسترس نبود. اما وقتی فرمول نگاشت درست پیدا شد، GreatScott! دید که دمای نمایشدادهشده با سنسورهای مرجع دقیق دیگر که در دست داشت، همخوان شده است.
شاید این مستقیمترین مسیر برای رفع مشکل نبود، اما با توجه به ماهیت بسته سختافزار، راهحل خوبی بهشمار میآید. این پروژه یادآور میشود که گاهی تعمیر سختافزار سادهتر از آنی است که فکر میکنیم. قبل از اینکه سختافزاری را دور بیندازید، یک نگاه به داخل آن بیندازید—شاید با کمی مهندسی معکوس و یک برد کوچک، دوباره مثل روز اول کار کند.
من اون دیوونهام که وقتی بورد روشن نمیشه، ذوق میکنم؛ یعنی یه شب تا صبح قراره با منبع تغذیه و لاجیک آنالایزر عشق کنم! آدما قهوه میخورن که بیدار بمونن، ولی من بیدار میمونم تا بفهمم این بورد چرا باهام قهر کرده! زندگی من یه لوپ بینهایته بین باگ و دیباگ... با چاشنی یه کم امید و یه عالمه دیوونگی!
سیسوگ با افتخار فضایی برای اشتراک گذاری دانش شماست. برای ما مقاله بنویسید.