فهرست مطالب:

رابط شماره گیری روتاری تلفن با آردوینو: 6 مرحله (همراه با تصاویر)
رابط شماره گیری روتاری تلفن با آردوینو: 6 مرحله (همراه با تصاویر)

تصویری: رابط شماره گیری روتاری تلفن با آردوینو: 6 مرحله (همراه با تصاویر)

تصویری: رابط شماره گیری روتاری تلفن با آردوینو: 6 مرحله (همراه با تصاویر)
تصویری: لحظه دستگیری قاتل که دو فرد را در کنار خیابان سر برید ! 2024, جولای
Anonim
رابط شماره گیری روتاری را با آردوینو متصل کنید
رابط شماره گیری روتاری را با آردوینو متصل کنید
رابط شماره گیری روتاری را با آردوینو متصل کنید
رابط شماره گیری روتاری را با آردوینو متصل کنید

یک تلفن دوار قدیمی می تواند برای اهداف مختلفی در پروژه های Arduino شما استفاده شود - از آن به عنوان یک دستگاه ورودی جدید استفاده کنید ، یا از Arduino برای اتصال یک تلفن دوار به رایانه خود استفاده کنید. این یک راهنمای بسیار اساسی است که نحوه رابط شماره گیری را توضیح می دهد. به یک آردوینو ، و شماره شماره گیری شده را از طریق پیوند سریال آردوینو به رایانه منتقل کنید.

مرحله 1: شماره گیری را از تلفن حذف کنید

شماره گیری را از تلفن حذف کنید
شماره گیری را از تلفن حذف کنید
شماره گیری را از تلفن حذف کنید
شماره گیری را از تلفن حذف کنید
شماره گیری را از تلفن حذف کنید
شماره گیری را از تلفن حذف کنید

اولین قدم حذف واحد شماره گیری از تلفن است. من از نوعی تلفن GPO از سال 1970 استفاده می کنم. در این تلفن ، شماره گیری مستقیماً بیرون آمد - من فقط نیاز به کشیدن آن داشتم. اگر اینطور نیست ، ممکن است مجبور شوید تلفن را باز کنید و نحوه خاموش کردن آن را بیاموزید. پنج کابل به پشت دستگاه شماره گیری وصل شده بود. در تلفن من ، اینها اتصالات بیل معمولی بودند ، بنابراین من پیچ ها را باز کرده و آنها را بیرون کشیدم. اگر می خواهید تلفن خود را دوباره مونتاژ کنید ، به یاد داشته باشید که ضبط کنید که کدام سیم رنگی به کدام اتصال می رود.

مرحله 2: سوئیچ را شناسایی کنید

سوئیچ را شناسایی کنید
سوئیچ را شناسایی کنید

پس از خاموش شدن صفحه ، باید دید که چگونه صفحه چرخشی حرکت چرخشی را به پالس تبدیل می کند. سعی کنید صفحه را با دست بچرخانید و حرکت پشت را تماشا کنید. شما باید یک سوئیچ را مشاهده کنید که به سرعت مدار را می سازد و می شکند - بنابراین اگر "9" را شماره گیری کنید ، سوئیچ باید 9 بار درگیر شود. برای کسانی از شما که ممکن است قبلاً هرگز از شماره گیری چرخشی استفاده نکرده باشید - به یاد داشته باشید که شماره گیری تنها زمانی اتفاق می افتد که اجازه دهید شماره را بروید و بگذارید به عقب برگردد. من نحوه کارکردن آن برای تلفن خود را در یادداشت های عکس زیر مستند کرده ام. همچنین یک فیلم مبهم از عملکرد مکانیسم وجود دارد.

مرحله 3: مدار را ایجاد کنید

مدار را بسازید
مدار را بسازید
مدار را بسازید
مدار را بسازید

هنگامی که سوئیچ ساخته شده و خراب را پیدا کردید ، باید بتوانید با دنبال کردن سیم ها به پایانه های اتصال ، اتصالات را تشخیص دهید. در مورد من ، دو طرف سوئیچ به دو پایانه سمت چپ متصل می شوند. این پایانه ها را به سیم های بلوز وصل کنید و نمونه سازی کنید! سوئیچ شماره گیری من همیشه روشن است و هنگام شماره گیری برای هر پالس خراب است ، بنابراین از مدار بسیار ساده زیر استفاده کردم. با چرخاندن شماره گیر ، پین 2 برای هر پالس HIGH می شود. هنگامی که تلفن در حال شماره گیری نیست ، سوئیچ موجود در واحد شماره گیری بسته است (به اصطلاح یک سوئیچ اصطلاحاً NORMALLY CLOSED) ، بنابراین مدار پین 2 را به زمین وصل می کند (که در Arduino پایین است). این به این دلیل است که مقاومت بسیار کمتری از طریق مقاومت 470 اهم نسبت به مقاومت 10K وجود دارد. هنگامی که تلفن شماره گیری می شود ، سوئیچ به سرعت باز و بسته می شود (به یاد داشته باشید ، برای عدد 9 ، نه بار دیگر باز و بسته می شود). هنگامی که سوئیچ باز است ، پین 2 به زمین متصل نمی شود - در عوض از طریق مقاومت 10470 اهم به منبع تغذیه 5 ولت متصل می شود. این توسط Arduino به عنوان HIGH تفسیر می شود. اگر شماره گیری شما دارای یک سوئیچ NORMALLY OPEN است ، سپس موقعیت های مقاومت 10K را عوض کنید و شماره گیری باید ترفند را انجام دهد.

مرحله 4: توسعه کد

کد را توسعه دهید
کد را توسعه دهید

در حال حاضر ما برای آردوینو به کد نیاز داریم تا تعداد پالس ها را شمارش کرده و تعداد کل شماره های شماره گیری شده را از طریق پورت سریال ارسال کند. کد من در زیر آمده است. از آنجا که ما در اینجا با مکانیک ها سروکار داریم ، ممکن است نظر شما متفاوت باشد. سعی کنید با ثابت بازخوانی و ثابت "چقدر منتظر می مانیم تا فرض کنیم چرخش به پایان رسیده است" ثابت بماند. من سعی کردم تا آنجا که می توانم آن را کاملاً منظم بیان کنم. امیدوارم بسیار ساده باشد. in needToPrint = 0؛ int count؛ int in = 2؛ int lastState = LOW؛ int trueState = LOW؛ long lastStateChangeTime = 0؛ int پاک شده = 0؛ // constantsint dialHasFinishedRotatingAfterMs = 100؛ int debounceDelay = 10؛ void setup () {Serial.begin (9600)؛ pinMode (in، INPUT)؛} void loop () {int reading = digitalRead (in)؛ if ((millis () - lastStateChangeTime)> dialHasFinishedRotatingAfterMs) {// شماره گیر شماره گیری نمی شود ، یا شماره گیری آن به تازگی به پایان رسیده است. if (needToPrint) {// اگر فقط شماره گیری آن به پایان رسیده باشد ، باید شماره را در خط سریال // ارسال کرده و تعداد را بازنشانی کنیم. ما تعداد را با 10 تغییر می دهیم زیرا '0' 10 پالس ارسال می کند. Serial.print (تعداد٪ 10 ، DEC) ؛ needToPrint = 0؛ تعداد = 0 ؛ پاک شده = 0 ؛ }} if (خواندن! = lastState) {lastStateChangeTime = millis ()؛ } if ((millis () - lastStateChangeTime)> debounceDelay) {// debounce - این امر زمانی اتفاق می افتد که اگر (خواندن! = trueState) {// این امر ثابت می شود {// این بدان معناست که سوئیچ یا به تازگی از بسته-> باز شده یا برعکس به trueState = خواندن ؛ اگر (trueState == HIGH) {// تعداد پالس ها را در صورت زیاد شدن افزایش دهید. شمارش ++ ؛ needToPrint = 1 ؛ // ما باید این شماره را چاپ کنیم (وقتی چرخاندن شماره گیری به پایان رسید)}}} lastState = خواندن ؛}

مرحله 5: بررسی کنید آیا کار می کند

با باز کردن یک پنجره سریال (من از صفحه نمایش در دستگاه یونیکس استفاده می کنم ، ممکن است بخواهید از Hyperterm یا موارد مشابه در ویندوز استفاده کنید) ، کار کنید و برخی شماره ها را شماره گیری کنید. مطمئن شوید که برنامه سریال برای خواندن از USB تنظیم شده باشد > آداپتور سریال در آردوینو خود (در صورتی که فراموش کردید منوی Tools-> Serial Port در نرم افزار Arduino چیست را بررسی کنید) و نرخ باتری 9600 bps. هنگام مشاهده شماره صحیح ، باید عدد صحیح را مشاهده کنید.

مرحله 6: آن را به چیزی مفید وصل کنید

آن را به چیزی مفید متصل کنید!
آن را به چیزی مفید متصل کنید!

من یک فایل Quartz Composer در Mac خود تهیه کردم تا ورودی را گرفته و به زیبایی روی صفحه نمایش دهم. هنگامی که به عنوان داده های سریال در دستگاه قرار دارد ، می توانید هر کاری را با آن انجام دهید. منتظر شنیدن ایده های خود باشید! من به محض اینکه بتوانم کسی را بدست آورم ، یک ویدیو از آن "در عمل" ارائه می دهم و اعداد را روی صفحه چاپ می کنم. برای نگه داشتن دوربین برای من - ای کاش من سه دست داشتم.

توصیه شده: