آموزش پروژه caller ID با استفاده از میکروکنترلر avr

با سلام خدمت همه دوستان

در این مطلب یک پروژه caller id با استفاده میکروکنترلر avr خواهیم داشت.

سخت افزار با استفاده از ای سی کالر آي دي با تراشه هاي MT 8843 و يا HT9032 قابل انجام است.

در این پروژه از ای سی HT9032  استفاده کرده ام که از روبوکیو یا جوان الکترونیک میتوانید تهیه کنید .تمام قطعات این پروژه را از سایت روبوکیو تهیه شده است.

هر دو تراشه با سرعت ۱۲۰۰bps اطلاعات را از طریق یوزارت ارسال مي کنند.

براي ارتباط سريال ،اسيلاتور اين تراشه ها با BAUD RATE دائما در حال نوسانن ،حتما يک خازن سراميک با ظرفيت ۱۰۰nf با تغذيه آي سي موازي کنيد تا روي خط تغذيه نويز نداشته باشيد.

بين زنگ اول و دوم اطلاعات با نرخ ۱۲۰۰ بيت بر ثانيه ارسال ميشود،اين اطلاعات از جنس کاراکتر اند، پس از چند بايت علامت(حدود ۳۰ بايت علامت) اطلاعات اصلي که مربوط به شماره مخاطب ، ساعت تماس و تاريخ تماس ارسال ميشود .

طبق تست هایی که با این ای سی انجام دادم با خطوط  ایرانسل، همراه اول ، تلفن ثابت داخل استان و خارج استان تماس میگرفتم فرمت شماره دریافتی با هم فرق میکردند که این مسئله مربوط به مخابرات می شود و پس از تست های زیادی و تغییرات برنامه موفق شدم تمامی شماره هارا به درستی از ای سی استخراج کنم.

چند نمونه از خروجی دیتای ای سی را برای شما قرار می دهم:

اینجا من دو نمونه از خروجی ماژول را قرار دادم همانطور که میبینید در حال عادی و اماده به کار ای سی یک سری دیتای بی ربط که دائمنا در حال پرینت شدن هستن می فرستد (مربع ها و کاراکتر های ناشناخته) به محض اینکه با خط ،تماس برقرار میکنید دیتای شماره و ساعت و تاریخ پرینت می شود.

مورد نمونه اول شماره داخل استان تهران بدون پیش شماره ۰۲۱ و مورد دومی تماس از رشت بدون ۰ و شماره همراه اول در ابتدا ۹۸ دارد و شماره ایرانسل در ابتدا ۰ دارد.این پیپچیدگی در فرمت شماره بسیار کار را مشکل میکند اما بنده برای تمام حالت ها برنامه رو نوشتم و در اخر کار و پس محاسبات یک شماره ۱۱ رقمی به شما تحویل می دهیم که هم میتوانید روی lcd نمایش دهید و هم ان را از طریق پیامک توسط ماژول sim800L بفرستید و میتوانید این سخت افزار را مثلا در محل تلفن منزل متصل کنید تا وقتی کسی با تلفن منزل تماس گرفت و شما حضور نداشتید شماره به شخص تماس گیرنده به گوشی شما یا بهتره بگم به شماره شما پیامک شود و به همین منظور من در سخت افزار یک صفحه کلید یا keypad هم پیش بینی کردم که بتوانید شماره خود را به میکرو تعریف کنید و این شماره در حافظه ایپرام میکرو ذخیره میشود تا اگر شخصی با تلفن منزل یا شرکت تماس گرفت شماره شخص تماس گیرنده به شماره شما توسط sim800l پیامک شود و همچنین کاربرد های دیگری نیز میتوانید داشته باشید.

یک نکته هم خدمتتون بگم که این ای سی ht9032 یک پایه پاور هم دارد که شما با صفر و یک کردن این پایه می توانید ای سی را خاموش و روشن کنید در مواقعی که خاموش است دیگر برای شما کاراکتر های پرت و پلا ارسال نمی شود و فقط موقع زنگ خوردن ای سی را روشن کنید که برای اینکه بفهمید کی زنگ خورده یا تعداد دفعات زنگ خوردن رو داشته باشید یه یک مدار آشکار ساز ring نیاز دارید که شماتیک اون هم براتون قرار میدم.

در این پروژه دوعدد خازن mkt هم قرار دارند که ولتاژ کاری ان ها باید بالای ۵۰ ولت باشد

همانطور که تصویر مدار را میبینید استفاده از قابلیت ماژول پیامک و lcd و keypad کاملا اختیاری است و توسط پین هدر انجام می شود:

همچنین مدار با استفاده از یک باتری لیتیومی ۳٫۷ ولتی(فول شارژ ۴٫۲ ولت) به راحتی راه اندازی می شود که در بالا پین های ان را مشاهده میکنید(با ماژیک نوشتم B+ , B- ):

پس از اینکه با وقفه خارجی میکرو وجود سیگنال رینگ را تشخیص دادیم پایه شماره ۵ ای سی را صفر میکنیم تا فعال شود و شماره تلفن را به میکروکنترلر بفرستد.

دقت کنید ولتاژ خط تلفن در بیشترین حالت حدود ۵۰ ولت است بنابراین خازن ها با ولتاژ ۵۰ولت تهیه کنید. توضیحات دقیق تر به صورت زیر است:

ولتاژ ac و DC خط تلفن چقدره
ولتاژ ac و DC خط تلفن چقدره و همچنین فرکانسش ؟قبل از زنگ ، هنگام زنگ و بعد از زنگ و هنگام اشغال بودن و جواب دادن تلفن.؟ پاسخ۱: درحالت بیکاری(بوق آزاد) ولتاژ بین ۴۰ تا ۵۰ ولت DC در حالت زنگ خوردن، ولتاژ می‌ره بالا( حداکثر تا ۱۰۰) AC بقیه رو نمی‌دونم. در ضمن چون مراکز مخابراتی مختلف از تجهیزات و سوئیچ های مختلفی استفاده می‌کنن،ممکنه ولتاژ ها یه اختلاف کوچیکی با هم داشته باشن پاسخ۲: ولتاز در حالتی که از خط تلفن استفاده نمیشه ۴۸ ولته در حالتی که گوشی رو بر میداری ۷٫۵ ولته من تو یه مطلبی خوندم که خط تلفن برای جابجایی اطلاعات فقط میتونه حداکثر تا فرکانس ۲۰۰۰ هرتز کار کنه.البته دقیق نمیدونم.از یه نفر که کارش خوب بود شنیدم ادامه مطلب……… پاسخ۳: ولتاژ خطوط تلفن بسته به نوع مرکز تلفن با هم فرق دارند. مثلا بعضی مراکز قدیمی ۶۶ ولت بودند و مراکز جدید تر این ولتاژو کاهش دادند تا ۴۸ ولت و بعضی از مراکز داخل ساختمان(یعنی کم ظرفیت) ۲۴ ولت نیز میباشند مانند بعضی از مراکز پاناسونیک. ولتاژ زنگ یک ولتاژ AC است با فرکانس ۲۵ هرتز ویا ۵۰ هرتز که بستگی به نوع مرکز دارد .این ولتاژ خیلی ساده روی ولتاژ DC سوار میشود و پس از گذشتن از خازن موجود در مدار زنگ تلفن و یکسو شدن باعث بصدا درآمدن زنگ تلفن میشود. البته در تلفن های قدیمی این ولتاژمستقیما پس از عبور از خازن به سیمپیچ زنگ میرسید و باعث بصدادرآمدن آن میشد. خوب فرکانس بوق های مختلفی که میشنوید از ۴۰۰ هرتز تا ۵۰۰ هرتز بسته به نوع مرکز میباشد ولی استانداردش ۴۲۵ هرتز است . پاسخ۴: شما برای استفاده از آی سی های کالر آی دی نیازی به تعیین فرکانس ندارید و فقط کافی مدار اونو ازروی نقشش بسازید و خروجیشو برای نمایش به میکرو کنترل بدین.اگه شماتیک آی سی ۸۸۴۳ رو نگاه کنین میبینین که مستقیما خط تلفن از طریق ۲ عدد خازن ۰٫۰۱ میکرو به اون وصل شده و اطلاعات مربوط به شماره تماس گیرنده مستقیما از همین خازن ها به آی سی میرسه . ضمنا مراکز تلفن ما از مودلاسیون FSK و dtmf استفاده میکنند.البته نیازی نیست که برای ساخت کالر آی دی اطلاعات از این نوع مودلاسیون داشته باشیدولی اگر علاقه مندید میتونید یه سرچی بزنید واطلاعات خوبی رو پیدا کنید. پاسخ۵: درسته نیازی به دانستن فرکانس نیست اما مقاومت هایی که در دیتا شیت هست مقدار استاندارد نیستند .پس اگه بخوایم یه مقدار تغییر بدیم، نیاز به محاسبه مجدد داره که نیاز به مقدار فرکانس داره.(البته من می خوام از sm8223 استفاده کنم) به هر حال از کمکتون ممنونم. پاسخ۶: در کتاب آزمایشگاه مبانی مخابرات و رادیو تمامی استاندارد های ولتاژ و فرکانس خط تلفن قرار دارد . در واقع خط تلفن فرکانس های زیادی استفاده می شود . که البته در سیتم دیجتال امروز بسیاری از این فرکانس ها به صورت هشدار های صوتی تغییر کرده است . برخی از فرکانس ها : بوق آزاد :۴۴۰ تا ۳۵۰ هرتز بوق ممتد بوق اشغال : ۴۸۰ تا ۶۲۰ -۰٫۵ روشن ۰٫۵ خاموش بوق بازتاب زنگ تلفن : ۴۴۰ تا ۴۸۰ – ۲ روشن ۴ خاموش در مورد مدار که شما نیاز دارید یک کدکشای سیگنل و dtmf fsk است . و بهتر است از ای سی mt8870 استفاده کنید و باید فقط بدانید در زنگ دوم چه اتفاقی می افتد به خاطر اینکه در زنگ دوم شرکت مخابرات شماره تلفن و تاریخ ارسال می کند .

سورس کد به زبان سی در کامپایلر کدویژن و طراحی مدار در نرم افزار التیوم دیزاینر انجام شده است.

دقت کنید که فرکانس کاری میکرو ۸ مگاهرتز است و حتما از کریستال خارجی استفاده کنید.

جهت تهیه پروژه میتوانید از لینک زیر اقدام کنید:

 

 

mehdi sehati

در این سایت پروژه و آموزش های انواع ماژول ها و میکروکنترلر ها و نحوه ارتباط سخت افزار با نرم افزار (برنامه نویسی اندروید برای گوشی و برنامه نویسی سی شارپ برای کامپیوتر) و برنامه نویسی پایتون و رسبری پای و ماژول های وای فای قرار میگیرد همچنین دوستان برای توضیحات بیشتر و سفارش پروژه میتوانند به آی دی تلگرام بنده مراجعه کنند

مطالب مرتبط

Subscribe
Notify of
guest

0 نظرات
Inline Feedbacks
View all comments
0
Would love your thoughts, please comment.x