تماس با ما

فید خبر خوان

نقشه سایت

بزرگترین سایت مقالات الکترونیک و مطالب مرتبط با الکترونیک

http://kia-ir.ir

دسته بندی سایت

پیوند ها

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

آمار بازدید

  • بازدید امروز : 8
  • بازدید دیروز : 94
  • بازدید کل : 1434388

چراغ راهنمایی با AVR


در این پروژه یک چراغ راهنمایی هوشمند با avr طراحی میکنیم که علاوه بر نمایش مقادیر بر اساس زمان به صورت اتوماتیک توانایی کنترل دستی روی آن را خواهیم داشت.برنامه با کدویژن طراحی و اجرا شده است وشبیه سازی با استفاه از نرم افزار پروتیوس میباشد.پیش از این یک سوس چراغ راهنمایی هوشمند در سایت وجود داشت که سال 91 طراحی کردم که از لینک چراغ راهنمایی هوشمند میتوانید این سورس را دانلود نمایید.سورس جدید چراغ راهنمایی با AVR را یکی از کاربران سایت ارسال کرده و به دلیل کیفیت خوب این مدار آنرا در سایت برای استفاده قرار دادم.

چراغ راهنمایی

چراغ راهنمایی یک وسیله یا نماد راهنمایی و رانندگی است. این چراغ در تقاطع جاده‌ها، پیاده‌روها، ورودی و خروجی معابر و برخی اماکن دیگر نصب می‌شود و جریان آمد و شد را هدایت می‌کند. این وسیله حق عبور را به کمک سه رنگ نوری استاندارد (قرمز، زرد، سبز) مشخص می‌سازد.

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

سخت افزار های مورد نیاز:

  • ATMEGA 16
  • 7SEGMENTدو تایی کاتد مشترک - 4 عدد
  • Traffic lights دو عدد
  • گیت OR - دو عدد
  • BUTTON پنج عدد
  • مقاومت – 4 عدد

تصاویری از مدار پروژه ی چراغ راهنمایی هوشمند با avr:

TRAFFIC LIGHT atmega16

TRAFFIC LIGHT atmega32

توضیح درباره عملکرد مدار:

من یک عدد چراغ راهنمایی ساختم علاوه بر نشان دادن چراغ ها دارای تایمر می باشد . که دو حالت دستی و اتوماتیک است . در حالت اتوماتیک می توان آن را در چهار مد کاری مختلف تنظیم کرد که این مد های کاری در مقدار زمان تایمر های چراغ ها متفاوت است و به شرح زیر است :

S0 S1 مقدار زمان چراغ سبز مقدار زمان چراغ قرمز  
0 0 12 15 MODE 0
1 0 23 25 MODE 1
0 1 37 40 MODE 2
1 1 47 50 MODE 3

در حالت کنترل دستی نیز دارای دو کلید است که به این صورت است که وقتی یکی از آن ها زده شود در هر قسمتی از اجرا برنامه باشد خارج شود و یکی از چراغ ها سبز و دیگری قرمز می شود و بر روی تمامی 7 سگمنت ها عبارت PO نمایش داده می شود و تا وقتی شخص کلید را به حالت اول برنگرداند به کار خود ادامه دهد.

چراغ سبز1 و قرمز2 روشن می شود INT 0
چراغ سبز2 و قرمز1 روشن می شود INT 1

 

انتشار : ۴ آبان ۱۳۹۴

راه اندازی سنسور اثر انگشت sm630


در این پروژه از ماژول اثر انگشت (fingerprint) به شماره SM-630 استفاده شده است. امکان اضافه کردن حداکثر 768 اثر انگشت وجود دارد. در این پروژه به تعداد 10 اثر انگشت می تواند به سیستم معرفی شود و با گذاشتن انگشت بر روی سنسور فرمان باز شدن درب صادر می شود. در صورتیکه اثر انگشت شناسایی نشود یک آلارم تولید میشود. این پروژه همچنین می تواند به عنوان یک دستگاه ثبت ورود و خروج مورد استفاده قرار گیرد.

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

برنامه های برای تست ماژول sm630:

برای تست این ماژول بدون این که به میکرو متصل شود میتوان با استفاده از برنامه ی زیر بر روی ویندوز و استفاده از پورت com یا یک مبدل usb به com ماژول را تست نمود و از عملکرد درست ماژول اطمینان حاصل نمود.با این برنامه میتوانید sm630 را تست کنید و در صورتی که به درستی عمل نمود در پروژه خود از ان استفاده نمایید.

Fingerprint sm630 program

خصوصیات این ماژول اثر انکشت:

  • قیمت ارزانتر نسبت به SM621
  • الگوریتم بیهنه تر شده با مصرف انرژِی کمتر
  • رابط کاربری بهتر برای راه اندازی ماژول
  • ولتاژ کاری 4.3 تا 6 ولت و در ولتاژ 6.5 آسیب خواهد دید
  • در حالت عملکرد 80 میلی آمپر مصرف خواهد داشت
  • حداکثر 768 اثر انگشت قابل ذخیره سازی است که نسبت به SM621 کمتر است
  • زمان جستجوی این ماژول در بین 200 اثر انگشت 1.5 ثانیه است که تاخیر زیادی نسبت به SM621 دارد و این مورد نشان میدهد که ماژول SM621 بسیار حرفه ای تر است هر چند قیمت و حجم بیشتر دارد.
  • حافظه ی فلش 64KByte دارد
  • پرتکل ارتباط سریال TTL است و این نشان میدهد که میتوان مستقیم به میکرو متصل گردد و برای PC نیاز به MAX232 است.

Add F1 3 400x299

در واقع این ماژول برای کارهای کوچک طراحی شده یعنی حدود 200 اثر انگشت زیرا تاخیر بیشتر از چندین ثانیه عملکرد درستی را اریه نمیدهد و علاوه بر این از یک الگوریتم کم مصرف استفاده شده و این خطای تشخیص را بالا میبرد.

انتشار : ۴ آبان ۱۳۹۴

مبدل هاي آنالوگ به ديجيتال و طراحي و شبيه ساري آن با matlb simulink


از هنگامی که سیستمهای پردازشگر دیچیتال مطرح شده اند این مسئله نیز به همراه آن مطرح شد که چگونه می توان یک سیگنال آنالوگ را به یک سیستم دیجیتال وارد کرد و به طور متقابل ، چگونه باید سیگنالهای دیجیتال خارج شده از سیستمهای دیجیتال را به دنیای آنالوگ تحویل داد. در اینجا بود که ضرورت ساخت مبدلهای آنالوگ به دیجیتال و دیجیتال به آنالوگ احساس شد و انواع مختلفی از مبدلهای فوق معرفی شد. ارائه طرحهای جدید و ایده های نو به منظور بهبود کیفیت این مدارها تا امروز ادامه دارد و به نظر می رسد تا زمانی که سیگنالهای آنالوگ و دیجیتال وجود داشته باشند، این مبدلها به پیشرفت خود ادامه دهند.
این پایان نامه به بررسی مبدل های آنالوگ به دیجیتال و دیجیتال به آنالوگ ، انواع و کاربرد آنها می پردازد. در فصل اول مقدمه ای بر مبدل های آنالوگ به دیجیتال و دیجیتال به آنالوگ بیان شده است. در فصل دوم مبدل های دیجیتال به آنالوگ به اختصار بررسی شده است. در فصل سوم مبدل های آنالوگ به دیجیتال و انواع آن مورد بررسی قرار گرفته است و مدارها و شکلهای مهمترین انواع این مبدل ها ارائه شده است. در فصل چهارم طراحی و شبیه سازی ساختار و عملکرد مبدل های آنالوگ به دیجیتال ودیجیتال به آنالوگ با نرم افزارMATLAB SIMULINK و نتایج شبیه سازی ارائه شده است. در فصل پنجم طراحی کاربردی یک نمونه مبدل آنالوگ به دیجیتال بیان شده است. در فصل آخر نیز نتیجه گیری و پیشنهادات ارائه شده است.

فهرست

فصل اول: مقدمه و کلیات
1-1 مقدمه کلی
1-2 تعریف مبدلهای آنالوگ به دیجیتال و دیجیتال به آنالوگ
1-3 انواع مبدل های آنالوگ به دیجیتال
فصل دوم: مبدل های دیجیتال به آنالوگ
2-1 مقدمه
2-2 مبدل دیجیتال به آنالوگ چیست
2-3 ساختار مبدل های دیجیتال به آنالوگ
فصل سوم: مبدل های آنالوگ به دیجیتال
3-1 مقدمه
3-2 اصول تبدیل آنالوگ به دیجیتال
3-3 نحوه تقسیم بندی مبدل های آنالوگ به دیجیتال
3-4 انواع مبدل های آنالوگ به دیجیتال
3-4-1 مبدل های انتیگرال گیر
3-4-2 مبدل های شیب
3-4-3 مبدل های تقریب پی در پی (متوالی)
3-4-4 مبدل های فلاش
3-4-5 مبدل های سیگما دلتا
3-4-5-1 مبدل سیگما دلتا چیست؟
3-4-5-2 اساس کار مبدل های سیگما دلتا
3-4-5-3 ساختار و بلوک دیاگرام مبدل سیگما دلتا
3-4-5-4 ویژگیهای مبدل سیگما دلتا
3-5 مقایسه کیفی انواع مبدلهای آنالوگ به دیجیتال
3-6 توان مصرفی و سرعت تبدیل در مبدل های A/D
3-7 بررسی بیشتر برخی قطعات مرتبط با مبدل های A/D
3-7-1 مبدل جریان به ولتاژ
3-7-2 تقویت کننده های نمونه بردار و نگه دارنده (S/H)
3-7-3 مالتی پلکسرآنالوگ
3-8 تست مبدل های آنالوگ به دیجیتال
3-8-1 ضرورت تست مبدل های آنالوگ به دیجیتال
3-8-2 انواع روشهای تست مبدلهای آنالوگ به دیجیتال
3-8-3 روش هیستوگرام
3-8-4 روش تبدیل فوریه سریعFFT) )
3-8-5 روش sine fit
فصل چهارم طراحی و شبیه سازی مبدل های آنالوگ به دیجیتال با MATLAB SIMULINK
4-1مقدمه
4-2 عناصر و اجزای استفاده شده در شبیه سازی مبدل آنالوگ به دیجیتال
4-3 توضیح مراحل شبیه سازی
4-4 شبیه سازی فلیپ فلاپ D مبتنی بر گیت های NAND
4-5 شبیه سازی شمارنده دیجیتال 6 بیتی
4-6 شبیه سازی مبدل دیجیتال به آنالوگ
4-7 شبیه سازی مبدل آنالوگ به دیجیتال
4-8 ارائه و بررسی نتایج شبیه سازی
فصل پنجم: طراحی یک نمونه مبدل آنالوگ به دیجیتال سیگما – دلتا
5-1 مقدمه
5-2ساختار مدولاتور
5-3 طراحی مدولاتور در سطح سیستمی
5-4 طراحی مداری بلو کهای سازنده مدولاتور
5-5 مدار فیدبک مد- مشترک
5-6 مدار مقایسه گر
5-7 مدار تولید کلاک
5-8 بافر خروجی
5-9سوئیچ های مدار
5-10 خلاصه مشخصات مدولاتور
فصل ششم: نتیجه گیری و پیشنهادات
مراجع

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

  • مبدل های آنالوگ به دیجیتال نرخ نایکوئیست برای کاربردهای سرعت بالا و دقت پایین طراحی و ساخته می شوند.
  • بهترین ساختار برای پیاده سازی مبد لهای آنالوگ به دیجیتال با دقت بالا (مثل مبدل های صوتی( مبدل های سیگما- دلتا هستند . این مبدل ها بر اساس مدولاسیون سیگما دلتا ، دستیابی به دقتهای بالای تبدیل را بدون نیاز به به قطعات آنالوگ دقیق و المانهای تنظیم شده میسر ساخته اند.
  • مبدل های آنالوگ به دیجیتال تقریب پی در پی، مبدل های بسیار بهتری از مبدل های شیب هستند.
  • مبدل های آنالوگ به دیجیتال فلاش دارای سرعت بالا در تبدیل سیگنال از آنالوگ به دیجیتال هستند ولی هزینه ساخت نسبتا بالاتری هم دارند.
  • مبدل های دیجیتال به آنالوگ به عنوان یک وسیله مجزا از مبدل های آنالوگ به دیجیتال یا به عنوان بخشی از مبدل های آنالوگ به دیجیتال به کار می روند ودر مقایسه با مبدل های آنالوگ به دیجیتال به عنوان یک وسیله ساده مطرح هستند.این مبدل ها بر خلاف مبدل های آنالوگ به دیجیتال از تنوع کمی برخوردار هستند و شکل و ساختار مشابه به همی دارند.

موارد زیر به عنوان ادامه تحقیق حاضر پیشنهاد می گردد.

  • بررسی مبدل های آنالوگ به دیجیتال در مد جریان
  • بررسی و طراحی مبدل های آنالوگ به دیجیتال با توان کم و سرعت تبدیل بالا
  • بررسی فرایند ساخت و تولید مبدل های آنالوگ به دیجیتال
  • ساخت یک نمونه مبدل آنالوگ به دیجیتال
  • پیاده سازی روشهای تست مبدلهای آنالوگ به دیجیتال در نرم افزار matlab
  • بررسی انواع و کاربردهای مبدل های آنالوگ به دیجیتال سیگما دلتا

انتشار : ۴ آبان ۱۳۹۴

اتصال AVR به شبکه اترنت LAN با ENC28J60


یکی از کارهای جالبی که میشود با AVR انجام داد ایجاد یک وب سرور برای کنترل وسایل خانه یا هر کاربرد دیگری است.دلیل استفاده از شبکه مانیتورینگ بدون درد سر و در دسترس است چرا که با شبکه میتوان همه چیز را به اشتراک گذاشت و با هر وسیله ای که بتواند به شبکه متصل گردد و یک جستجوگر وب داشته باشد میتوان به کنترل دستگاه پرداخت.این قابلیت ها بدون شک برای ایجاد یک مانیتورینگ امن و بی دردسر یک امتیاز به حساب می آید.به همین دلیل در اکثر پروژه های صنعتی برای مانیتورینگ شبکه lan پیشنهاد میشود هر چند rs485 نیز همواره جایگاه خودش را دارد ولی ترکیب rs485 و LAN یک سیستم مانیتورینگ انعطاف پذیر خواهد بود.در این پروژه ما میخواهیم یک AVR را با استفاده از IC شبکه به اسم ENC28J60 به شبکه متصل نماییم و یک صفحه ی HRML طراحی کرده و به کنترل دستگاهای متصل به میکرو خواهیم پرداخت و میتوانیم هر کنترل لازمی را روی این سرور کوچک پیاده نماییم.با اتصال شبکه محلی به اینترنت و داشتن شرایط لازم نیز می توان به اطلاعات سایر پایگا ه های دست پیدا کرد و در هر نقطه ای از جهان با دستگاه مورد نظر ارتباط برقرار نمود. در این پروژه, مداری را طراحی می کنیم که با استفاده از تراشه کنترلر شبکه ENC28J60 و میکروکنترلر ATmega32 می تواند از طریق واسط اترنت با کامپیوتر به تبادل داده بپردازد.

آیسی ENC28J60

این تراشه توسط شرکت میکروچیپ (Microchip) برای استفاده در ابزارآلات سرعت پایین که به ارتباط شبکه (Network Communication) نیاز دارند, طراحی و ساخته شده است. این تراشه که یک کنترلر کامل اترنت به شمار می رود, به راحتی راه اندازی می شود و می تواند با داشتن حافظه داخلی کافی برای سیستم هایی که به سرعت و حافظه بالای پردازش اطلاعات نیاز ندارند, به کار رود. گفتنی است علاوه بر لایه اتصال داده, لایه فیزیکی نیز در این تراشه ها پیاده سازی شده است و لایه های بالاتر از لایه شبکه در میکروکنترلر به صورت نرم افزاری پیاده سازی می شوند. از جمله مشخصات بارز این کنترلر می توان به موارد زیر اشاره کرد:

:: بسته بندی های 28 پایه SPDIP/SOIC/SSOP/QFN

::داشتن هر دو لایه کنترل دستی رسانه و لایه فیزیکی

:: ارتباط SPI با سرعت 20MHz

:: سرعت انتقال داده 10Mbps

::8 کیلو بایت حافظه داخلی در شکل زیر ترتیب پایه ها و انواع بسته بندی این تراشه آورده شده است.

ENC28J60

نکات:

به دلیل این که آیسهای واسط به سختی یافت میشوند ما سعی کردیم این مدار را با حداقل ic لازم راه اندازی کنیم و برای این کار چند راه حل موجود بود:

  • راه اندازی avr وENC28J60 هر دو با ولتاژ 3.3
  • راه اندازی avr با 5 ولت و استفاده از تقسیم مقاومتی
  • استفاده از آیسی واسط 74HCT125 (استفاده از مدل HCT ضروری است زیرا این مدل حداکثر سرعت را به ما میدهد)

مشکل با کانکتور RJ45:

این کانکتور در مدلهای مختلفی در بازار یافت میشود که شامل مدل بدون فیلتر و با فیلتر و با LED و بدون LED میباشد .که ترکیب اینها 4 حالت را به وجود می آورد.لذا شکل پایه های مختلفی را به وجود می اورد که در صورتی که به مدل انتخابی توجه نکنیم ممکن است در ساخت با مشکل روبه رو شویم و کافی است جای یکی از پایه ها به اشتباه در PCB کشیده شود تا همه چیز اشتباه شود.برای تست باید تمامی پایه ها را بر اساس دیتا شیت با مولتی متر تست کنید تا از صحت اتصالات اطمینان حاصل نمایید.برای مثال برای کانکتور انتخابی من چندین مدل دیتا شیت به شکل زیر موجود بود:

حالت 1:

مدل :009POE-ANL یا RDPS-RJ0002

RJ 45 11

RJ 45 12

ENC28J60 LAN RJ45

حالت دوم:

مدل :KRJ-329NL

برند:DGKYD

RJ45 sheild 10p10c connector with 10 100 1000 magnetic with led G Y L 1

RJ45 sheild 10p10c connector with 10 100 1000 magnetic with led G Y L 2

RJ45 sheild font b 10p10c b font font b connector b font with 10

در هر دو حالت بالا شکل پایه ها کاملاً شبیه هم است ولی تریب پایه ها کاملا متفاوت است البته از روی LED ها میتوان به این تفاوت پی برد زیرا در RJ0002 ال ای دی سبز در سمت راست قرار دارد ولی در 329NL عکس آن است، ولی در هر صورت تست با مولتیمتر برای بدست آوردن اطمینان از عملکرد درست خالی از لطف نیست.پس از تست با مولتی متر مشخص شد که ترتیب پایه ها بر اساس حالت اول است.یعنی پایه های J4,J5 و J8,J7 در خروجی به هم اتصال دارند هر چند این مورد در حالت دوم نیز صادق است ولی در مورد دوم باید پین 5 و 6 به همه پایه ها اتصال داشته باشند که تست نشان میدهد که فقط بین 5 و 6 و4 اتصال برقرار است و همچنین بین 1و2و3 اتصال داریم پس حالت 1 شکل پایه های کانتکور خواهد بود.علاوه بر این پایه های 7و8.9.10 بر اساس حالت 1 هیج اتصالی ندارند و در عمل نیز به همین شکل است پس میبایست پایه های PCB را بر اساس حالت 1 طراحی کنیم.حال که مدل کانکتور مشخص شد باید کانکتور را به درستی به ماژول متصل نماییم.

اتصال ENC28J60 به کانکتور RJ45:

کانکتور انتخابی پایه های 1 و 2 پایه های ارسال و پایه های 4 و 6 پایه های دریافت هستند پایه 3 نیز به یک سلف متصل میگردد و با دیگر پایه ها اصلاً کاری نداریم .البته پایه های LED را نیز متصل میکنیم.در کل هر مدل کانکتوری که دارید باید نحوه ی اتصال پایه ها به شکل زیر باشد:

ENC28J60 TO RJ45

دست آخر باید اتصالات به شکل زیر باشد:

ENC28J60 TO RJ45.FZA.IR

در پایان در صورتی که کانکتور را به درستی تشخیص داده باشید و اتصال به ماژول را درست وصل کرده باشید اتصال به میکرو ساده خواهد بود و فقط مشکل اصلی اتصال به میکرو ولتاژ کاری میکرو است که سطوح ولتاژِی در ارتباط SPI اشکال ایجاد میکند.برای حل این مشکل خطوطی که از ماژول ENC28J60 به میکرو میرود را باید با یک آیسی به سطح مناسب برساینم یا با استقاده از تقسیم مقاومتی این مشکل را حل کنیم که بهترین راه حل استفاده از آسی M74HCT125 است زیرا تقسیم مقاومتی ایجاد نویز میکند.راه حل سوم کاهش ولتاژ کاری میکرو است که به دلیل استفاده از کلاک بالا در این پروژه این روش نیز امکان پذیر نیست.

انتشار : ۴ آبان ۱۳۹۴

پروژه ی رطوبت سنج و دما سنج


در این پروژه با استفاده از atmega8 و HS1101 و آیسی 555 یک رطوبت سنج طراحی کرده ایم.در واقع سنسور HS1101 یک خازن متغیر با رطوبت است که این خارن وقتی در مدار 555 به عنوان مدار تولید پالس استفاده میشود میتواند یک پالس با فرکانس متغییر تولید نماید که در این مدار با افزایش رطوبت فرکانس تولیدی افزایش و با کاهش رطوبت فرکانس کاهش میابد و این فرکانس پالس را میتوان با استفاده از میکرو اندازه گیری نمود.

humidity HS1101 lcd

اندازه گیری رطوبت و دما از جمله پارامترهای مهم در دستگاه جوجه کشی ، پرورش قارچ ، گلخانه ها و… میباشد . وسایلی که رطوبت را اندازه گیری میکند نوعا عقربه ایی بوده که نمیتوان مانوری بر روی ان انجام داد اما در نوع دیجیتالی (که قیمت ان ها چند برابر انالوگ ها میباشد ) میتوان مقدار دقیقتری از رطوبت و دما را اندازه گرفت و در صورت افت رطوبت و یا افزایش ان دستگاهی را روشن و خاموش نمود. در پروژه زیر فقط رطوبت و دما اندازه گیری شده و نشان داده میشود و فعلا به ان رله ایی وصل نشده تا بتوان ان را در مقدار تعیین شده قطع و وصل کرد که این کار را بر عهده خود کاربران گذاشته شده است.

پروژه ی رطوبت سنج و دما سنج
انتشار : ۴ آبان ۱۳۹۴

سیستم امنیتی پیشرفته با اثر انگشت FPM10A و کارت خوان RFID


این پروژه در واقع پروژه ی تکمیل شده ای از سیستم امنیتی اثر انگشت با sm621 است که البته در آن پروژه از زبان بسکم استفاده کرده بودیم حال این که در اینجا از زبان C و کامپایلر کدویژن و همچنین از ماژول اثرانگشت FPM10A استفاده شده است.در واقع این پروژه یک پروژه کاملا صنعتی بوده و عملکرد آن تا حد ممکن بهینه شده است و تمامی پیش بینهای لازم در اجرای یک پروژه ی کامل و بی نقض در آن پیش بینی شده است.در این پروژه برای بخش کارت خوان از ماژول RF01D استفاده شده است.

روش کار پروژه:

در این پروژه یک منوی اصلی وجود دارد که پس از روشن کردن دستگاه نمایش داده میشود و در این منو کلید F1 و CHECK IN نملیش داده میشود که به این معنی است که میتوانید کارت را بکشید یا این که بر روی کلید F1 کلیک کنید و با اثر انگشت وارد شوید.در واقع ما برای کاهش مصرف مدار کلید F1 را قرار داده ایم تا سیستم دائما در حال جستجو برای اثر انگشت نباشد.

1

1

1

1

در این دستگاه برای ورود به منوی اضاقه کردن اثر انگشت جدید یا کارت جدید باید یک قفل رمز 8 رقمی را وارد نمایید که در هر زمان بدون این که کلیدی را فشار دهید در صورتی که قفل رمز 8 رقمی را وارد نمایید میتوانید به منوی اصلی وراد شوید.در این منو شما 4 انتخاب دارید که اولی برای اقزودن اثر انگشت جدید است و دومی برای افزودن کارت و یا حذف کارت و سومی برای عوض کردن پسورد دستگاه میباشد.

1

1

برای افزودن کارت جدید کافی است که بر روی کیپد کلید شماره ی دو را فشار دهید:

1

در صورتی که کارت جدید باشد و در دیتابیس موجود نباشد پیام زیر نمایش داده میشود و از شما میخواد کلید YES برای افزودن کارت یا کلید NO برای برگشت به منوی قبل را فشار دهید:

1

دو عدد رله ی 5 ولتی uln2003 یک عدد ATMEGA32 یک عدد کیپد 4در 4 3 عدد میکرو سویچ مقاومت 4.7 کیلو دو عدد مقاومت 1 کیلو دو عدد مقاومت 100 اهمی و 470 اهمی هر کدام دو عدد دو عدد LED قرمز یک عدد LED سبر سوکت 40 پین و 16 پین برای آیسیها یک عدد سوکت نری و مادگی تک ردیفه برای LCD LCD مدل 2 در 16 سبز یا آبی ترمینال فونیکس 2 پین 4 عدد کریستال 11.059200MHZ برای تولید کلاک دقیق مدل دو پایه دیپ رگولاتور 7805 خازن 100 میکروفاراد 2 عدد خازن 22 پیکوفاراد 2 عدد پل دیودی گرد 2 آمپر

در صورتی که کلید YES را فشار داده باشید از شما میخواهد که محل ذخیره ی کارت را در دیتابیس مشخص کنید و سپس کلید YES را فشار دهید:

1

در اینجا ما بلوک صفر را انتخاب و YES را فشار دادیم که عمل ذخیره سازی کارت انجام گرفت:

1

برای افزودن اثر انگشت نیز از منوی اصلی کلید یک را فسازر میدهیم و تا زمانی که دو باز از اثر انگشت نمونه برداری نشده نباید انگشت را از روی سنسور تکان دهیم:

1

 

فیلم راه اندازی اولیه مدار:

 

نکات لازم در هنگام راه اندازی اولیه:

  • باید توجه کنید که در ابتدای راه اندازی هیج پسوردی در حافطه موجود نیست یعنی EEPROM خالی است و برای ذخیره شدن پسورد اولیه باید حتما در اولین راه اندازی کلید ADD یا همان D.5 را نگاه داریم تا عبارت RESET نمایش داده شود و پسورد به 11111111 تنطیم گردد.
  • شما میتوانید پس از این مرحله در منوی تنطیمات پسورد را به مقدار مورد نظر خود تغیییر دهید
  • برای افزودن اثر انگشت جدید سعی کنید در هنگام ثبت اثر انگشت انگشت از روی سنسنور تکان نخورد
  • از کارتهای 125 کیلو هرتزی برای ماژول RFD01 استفاده کنید
  • برای حذف دیتابیس ماژول FPM10A کلید D,4 را فشار دهید.

قطعات مورد نیاز برای ساخت پروژه ی اثرانگشت با FPM10A به همراه RFID (سیستم امنیتی):

  • یک عدد ماژول RFID به شماره ی RF01D
  • یک عدد ماژول اثر انگشت به شماره ی FPM10A
  • دو عدد رله ی 5 ولتی
  • uln2003 یک عدد
  • ATMEGA128 یک عدد
  • کیپد 4در 4
  • 3 عدد میکرو سویچ
  • مقاومت 4.7 کیلو دو عدد
  • مقاومت 1 کیلو دو عدد
  • مقاومت 100 اهمی و 470 اهمی هر کدام دو عدد
  • دو عدد LED قرمز یک عدد LED سبر
  • سوکت 40 پین و 16 پین برای آیسیها
  • دو عدد سوکت نری و مادگی تک ردیفه برای LCD
  • LCD مدل 2 در 16 سبز یا آبی
  • ترمینال فونیکس 2 پین 4 عدد
  • کریستال 11.059200MHZ برای تولید کلاک دقیق مدل دو پایه دیپ
  • رگولاتور 7805
  • خازن 100 میکروفاراد 2 عدد
  • خازن 22 پیکوفاراد 2 عدد
  • پل دیودی گرد 2 آمپر

انتشار : ۴ آبان ۱۳۹۴

دانلود پروژه لودسل(ترازوی دیجیتال) با دقت نیم گرم AD7780


در این پروژه با استفاده از یک لودسل 30 کیلو گرمی و بهره گیری از مبدل آنالوگ به دیجیتال AD7780 و یک میکرو کنترلر avr توانسته ایم یک ترازوی دیجیتالی طراحی کنیم . در واقع به دلیل این که در خروجی لودسل سیگنال خروجی در حدود 2 تا 8 میلی ولت است ابتدا باید این سیگنال تقویت گردد در مبدل آنالوگ به دیجیتال AD7780 یک تقویت کننده ولتاژ (opamp) قرار داده شده است که می توان گین آن را بین دو مقدار یک یا 128 تظیم نمود . برای حذف نویز در ورودی های مبدل از فیلتر های r-c و L-c استفاده شده است .دقت این مبدل 24 بیت است که میتوان تا حدود نیم گرم از این مبدل دقت گرفت که در مقاسیه با دقت مبدل داخلی AVR که حدود 60 گرم است دقت بسیار بالایی خواهد بود.این ترازو با قابلیت کالیبره سازی طراحی شده است و میتوان آنرا کالیبره نمود قابلیت همچنین برنامه قابلیت صفر کردن کفه ی ترازو را نیز دارد. در بین تمام adc ها AD7780 برای راه اندازی لودسل به علت سادگی در راه اندازی و دقت بالا دارای کیفیت مطلوبی است برای راه اندازی شما نیاز به دو رگولاتور 5 ولت برای تامین ولتاژ دیجیتال و آنالوگ دارید. لودسل نیز به پایه های AIN+وAIN- وصل میشود همچنین این آی سی از لودسل های BIPOLAR پشتیبانی میکند برای ارتباط این آی سی با مبکرو از رابط 4 سیمه SPI که به صورت یک طرفه نیز پشتیبانی میشود استفاده میکنیم.

قطعات مورد نیاز:

  • Atmega16
  • Lcd کارکتری
  • LM78M05CT
  • خازن و سلف و مقاومت
  • AD7780
  • سنسور لودسل 30 کیلویی

عکسهای عملکرد دستگاه:

ad7780

ad7780 1

ad7780 1

ad7780 1

ad7780 1

ad7780 1

ad7780 1

انتشار : ۴ آبان ۱۳۹۴

پروژه ی اثرانگشت sm621 با کدویژن


مدتها سعی داشتم که ماژول اثر انگشت sm621 را با کدویژن راه اندازی کنم هرچند قبلا در پروژه ی سیستم امنیتی با sm621 با بسکام راه اندازی کرده بودم ولی برنامه ی کدویژین را که بسیاری از کاربران درخواست میدادن نیمه تمام مانده بود.این برنامه با توجه به تجربه ای که در راه اندازیپروژه ی سیستم امنیتی اثر انگشت با sm621 داشتم بسیار کاملتر طراحی شده و تمامی زیر برنامه های مورد نیاز برای کار با sm621 را شامل میشود و این زیر برنامه ها تمامی عملکردهای sm621 را در بر میگردد.البته این پروژ ه میتواند با کارت خوان RFID و کلید رمز نیز ترکیب گردد و مانند پروژه ی سیستم امنیتی پیشرفته با اثر انگشت FPM10A و کارت خوان RFID به کاملترین پروژه ی SM621 تبدیل شود.

زیر برنامه های موجود در این پروژه:

همانطور که از لیست زیر برنامه ها مشخص است این پروژه شامل تمام زیر برنامه های لازم برای کار با sm621 میباشد.در این برنامه دیتاهای بازگشتی از sm621 را کاملاَ پردازش و دیکد میکنیم و زیر برنامه های لازم برای محاسبه ی checksum را نیز دارا میباشد این در حالی است که در اکثر پروژه های موجود checksum بازگشتی محاسبه نمیشود. در واقع این پروژه کاملترین پروژه ی موجود برای کار با sm621 میباشد.

  • send_SM621_package
  • fp_package_decode
  • Detect_Finger
  • get_image
  • gen_templet
  • merge_two_templet
  • store_templet
  • search
  • delet_one_templet
  • erase_all_templet
  • ADD_FINGERPRINT
  • fp_search
  • fp_pass
  • fp_nopass
  • erase_fp_record
  • sum
  • beep_long
  • beep_fast

مشخصات کلی این سنسور:

1-زمان ارزش گذاری = 8 فریم در ثانیه.
2-زمان ثبت اثر انگشت = 250ms
3- زمان جستجو اثر انگشت = 2.5s (مقدار متوسط برای 1776 اثر انگشت)
4- تطبیق سرعت = 200ms <برای 1 - به - 1 تایید
5- وضوح صفحه = 500DPI
6- اندازه تصویر = pixels 256x304
7- سطح امنیت = 5 سطح ، قابل تنظیم
8- ظرفیت نگهداری = 1776 اثر انگشت
9- منبع تغذیه = 3.6V-7V
10- جریان کاری = <120mA <120mA
11- جریان پیک = <150mA <150mA
12- رابط ارتباطی = TTL(RS232)
13- سرعت باود ارتباطی = 38400bps ، 57600bps ، 115200bps
14- دمای کار = 10-℃~50℃
15- رطوبت کار = 45% رطوبت نسبی ~ 85 ٪ رطوبت نسبی (بدون شبنم)
17- ابعاد ماژول = (L*W*H) 56.0 × 38.5 × 8.5mm)
18- ابعاد حسگر = (L*W*H) 25 × 21 × 55mm)

SM621PINOUT

محتویات پوشه:

  • فایل سورس کدویژن
  • فایل سورس پروتل و پروتیوس
  • فایل مربوط به atmega32 فایلهای مربوطه در دو پوشه جدا قرار دارند
  • فایل اتوکد برای برد اصلی
  • فایل ورد پایان نامه و توضیحات

دانلود فیلم راه اندازی پروژه:

 

انتشار : ۴ آبان ۱۳۹۴

اتصال مستقیم AVR به USB


اتصال مستقیم AVR به پورت USB یکی از دغدغه های همیشگی طراحان الکترونیک بوده و همواره وقتی اسمی از پورت USB برده میشد نام مبدل USB به سریال (FT232) نیز در کنار آن دیده میشد ولی اکنون با وجود کتابخانه های V-USB برای کدویژن و WINAVR و کتابخانه های swusb از Ollopa وUSB Add On برای بسکام دیگر نیازی به استفاده ازاین قطعات جانبی نیست و شما به راحتی میتوانید یک مبدل RS232 یا یک دیتالاگر یا هر چیز دیگری را به صورت کاملاً اتوران و بدون نیاز به درایور راه اندازی نمایید.در این کتابخانه ها میتوان میکروهایی مانند ATMEGA8 یا حتی ATTINY45 را به پورت USB وصل کرد.یعنی هر میکروی AVR که درای 4K بایت حافظه باشد قابل اتصال به پورت USB است.دراین مطلب 5 عدد پروژه با AVR برای شما قرار داده ام تا با مثالهای مختلف در این زمینه آشنا شوید.مثالهای زیر با بسکام بوده و بر اساس کتابخانه ی swusb میباشند.

پروژه راه اندازی موس با AVR:

راه اندازی موس با ATTINY45 که با اتصال آن به کامپبوتر موس به صورت رندم شروع به حرکت میکند و میتوانید این حرکت را از طریق پورت سریال یا اتصاال کلید به ATTINY45 نیز کنترل نمایید ولی از آنجایی که کل پایه های ATTINY45 8 پایه است میتوان از پورت سریال مجازی این کار را انجام داد شما میتوانید با این پروژه یک موس بی سیم هم طراحی کنید و به دلیل کوچک بودن ATTINY45 میتوان پروژه را کاملاً کوچک طراحی کرد.

پروژه دریافت مقادیر ADC با پورت USB:

در این پروژه با استفاده از یک برنامه ی VB یک رابط برای نمایش مقادیر خوانده شده از پورت USB طراحی کرده ایم که میتوان مقادیر ارسال شده را در PC به راحتی نمایش داد.این پروژه با ATMEGA8 راه اندازی شده است.

راه اندازی کلید و LED با AVR متصل به پورت سریال:

در این پروژه با استفاده از یک ATMEGA8 و یک رابط کاربری در PC میتوان دو LED را کنترل و مقاادیر دریافتی از کلید ها را نمایش داد.

پروژه ی ارسال یک عدد به PC ار طریق AVR متصل به USB:

در این پروژه با استفاده از یک ATMEGA8 و یک رابط کاربری در PC میتوان یک عدد را به PC ارسال نمود

پروژه ی ارسال و دریافت یک عدد به PC ار طریق AVR متصل به USB:

در این پروژه با استفاده از یک ATMEGA8 و یک رابط کاربری در PC میتوان یک عدد را به PC ارسال نمود و یا از PC دریافت کرد.

نکات راه اندازی :

به نکات زیر توجه نمایید زیرا راه اندازی این پروژه نیاز مند رعایت تمام این نکات است و رعایت نکردن یکی از این موارد باعث عمل نکردن سیستم خواهد شد.

  • سری L اصلا برای انجام این کار مناسب نیست. چون حداکثر فرکانس کاری این سری 8 مگاهرتز است که با کریستال 12 مگ درواقع دارین میکروتونو اور کلاک می کنید (Over Clock).
  • کامپایلر مورد استفاده باید ورژن BASCOM-AVR 1.11.9.8 باشد
  • پروگرم کردن میکرو با فایل هگز کفایت می کند. ولی باید تنظیمات مربوط به فیوزبیت ها را انجام بدهید .
  • درست بودن مقاومت های 47 اهمی (محدوده این مقاومت بین 22 اهم تا 68 اهم می تونه باشه)
  • درست بودن مقدار مقاومت 1.5 کیلو و نحوه ی اتصال صحیحش از Vusb به خط دیتا منفی usb
  • استفاده از کریستال خارجی با فرکانس 12 مگا هرتز
  • صحیح بودن خود برنامه ای که کامپایل می کنید.
  • تنظیم فیوزبیت های میکروکنترلر برروی کریستال خارجی فیوزبیت ها باید برروی کریستال خارجی تنظیم بشن. به شکل زیر : CKSEL0 = 1 CKSEL1 = 1 CKSEL2 = 1 CKSEL3 = 1 همچنین فیوز بیتهای SUT0 = 1 SUT1 = 1 .
  • این موس از همه ی دستگاه های مربوط به نسخه های USB1.1 و USB2.0 و USB3.0 هم پشتیبانی می کند.
  • روی سیستم های 64 بیتی تست شده و روی ویندوز های 7 و 8 و 8.1 هم 32 و هم 64 بدون هیچ درایوری جواب میدهد چون دستگاه شما به عنوان یک HID شناخته میشود. مثلا به عنوان یک ماوس ، ماوس نیز در همه ی سیستم عامل ها بدون درایور شناخته میشود.
  • گاهی قرار دادن خازن 22 پیکو باعث کار نکردن میکرو میشود و سعی کنید با خازن 22 و 18 و 15 پیکو هم تست کنید و در صورتی که عمل نکرد بدون خارن راه اندازی کنید.دلیل عمل نکردن سری های جدید هست که بدون خازن هم راه اندازی مشوند.

دانلود فیلم راه اندازی پروژه ها:

انتشار : ۴ آبان ۱۳۹۴

ارسال صدا با Nrf24L01


در این پروژه با استفاده ازNrf24L01 سعی کردم تا صدا رو به صورت هم زمان ارسال کنم.در این پروژه از ماژول Nrf24L01 ساده و بدون lna صار را به صورت آنلاین به گیرنده انتقال دهم که در این پروژه به دلیل استفاده از مدل ساده ی این ماژول کیفیت لارم را در انتقال دیتا نداشیتم چرا که دیتای جدید بر روی دیتای قبلی ارسال میگردد و برخی از داده ها از بین میروند.برای از دست ندادن دیتا باید تاخیر در ارسال را حدود 20 میلی ثانیه اعمال کرد تا داده ها در هنگام ارسال بر روی هم نیفتند.دلیل اصلی افتادن دیتا روی هم این است که این ماژولهای ساده در هنگام ارسال دیتا دچار خطای بسیار زیادی در ارسال میشوند و برای ارسال مجدد تلاش میکنند که در کانفیگ ماژول روی 16 بار تلاش کانفبگ شده است و در هر بار تلاش 250 میکرو ثانیه تاخیر داریم که در کل 4 میلی ثانیه تاخیر خواهیم داشت.این به این معنی است که با ماژولهای پرخطا و ساده ما میتوانیم هر 4 میلی ثانیه 30 نمونه صدای ضبط شده ارسال نماییم که به معنای 7500 نمونه در ثانیه که حدود 8 کیلو هرتز میباشد ولی این 8 کلیو هرتز باید در زمانهای با فاصله ی برابر نمونه برداری شود این در حالی است که نمونه های برداشته شده د این پروژه با فاصله زمانی نا برابر نمونه برداری شده است یعنی هر 45 میکرو ثانیه یک نمونه برداشت شده و پس از برداشت 30 نمونه این نمونه ها ارسال شده ولی در بخش ارسال نمونه ها نمونه های ارسال شده با خطای بسیار زیاد دریافت گردیده و مجبور شده ایم تا زمان لازم برای تکرار ارسال تا 16 بار ارسال را به ماژول بدهیم این مشکل با استفاده از ماژولهای lna دار که قیمتی حدود 30 تومن دارند حل خواهد شد و صدا با کیفیت کامل 128k هرتز را در خروجی خواهیم داشت.

چالش ضبط صوت با avr

در تست های صورت گرفته با avr به راحتی میتواند با فعال کردن حالت بدون نویز صدای با کیفیت بسیار بالا ضبط نمود و در صورتی که کریستال خارجی 16 مگاهرتزی استقاده شود کیفیت صدا بسیار بالا خواهد رفت و در واقع مشکل اصلی ما با بخش ارسال است زیرا تاخیر در ارسال باعث میشود میکرو نتواند در زمان مناسب نمونه برداری نماید.لذا باید بخش ارسال دیتا تاخیر نداشته باشد.اگر این تاخیر در حدود 45 میکرو ثانیه باشد تاخیر مناسبی است ولی تاخیر در حدود 250 میکرو ثانیه قابل تحمل است ولی هرچه تاخیر در مرحله ی ارسال بالا برود کیفیت صدای ضبط شده کاهش میابد که در این پروژه 2 میلی ثانیه است که یعنی 8 برابر مقدار استاندارد مورد نظر.

ارسال دیتا با Nrf24L01

در واقع Nrf24L01 یک ماژوول با پهنای باید 2 مگا بایت بر ثانیه است وبا اتصال به spi میکرو با سرعت 4 مگ بدون شک یک دیتای صورت با کیفیت 128 کیلو بایت بر ثانیه را به راحتی باید ارسال کند.ولی در Nrf24L01 های بدون lna این اثفاق نمی افتد و دلیل اصلی آن این است که دیتا ها با اشکال ارسال میشوند و ما باید زمان لازم را به ماژول بدهیم تا ماژول دیتا را پس از چند بار ارسال در پایان درست ارسال نماید.ولی در ماژولهای lna دار به دلیل خطای کمتر میتوان دیتاها را هر 250 میکرو ثانیه به ماژول ارسال نمود.

راه حل هایی برای ارسال دیتا با تاخیر چنیدن میلی ثاینه؟

راه حل این مشکل شاید با استفاده از یک بافر 1024 بایتی حل شود ولی مشکل اینجاست که میکرو در هنگام ارسال دیتا دیگر نمونه برداری نمیکند و با تاخیر 4 میلی ثانیه با تاخیری بزرگ روبه رو هسیتیم.البته میتوان میکروی سومی استفاده کرد و وظیفه ی ضبط را بر عهده ی میکروی سوم گذاشت و دیتای بافر شده را به میکروی ارسال کننده ارسال کرد ارسال دیتا به میکروی سوم با استفاده از پورت سریال با باود ریت 100000 به بالا مشکل را حل میکرد ولی باز هم به دلیل خطای بالای ارسال سریال با کریستال 16 مگ این راه حل نیز مناسب نبود.هر چند میتوان با بافر کوچکتر نیز همین روش را ادامه داد و به نتایج مناسب دست یافت.البته بهترین راه حل همان استفاده از ماژولی با تاخیر ارسال کمتر شبیه به Nrf24L01 با lna است.

بخش تقویت کننده برای میکروفن

من چندیدن مدار را برای این بخش تست کردم که با آپ امپ های LM741 و LM386 و همچنین LM358 طراحی شده اند که بهترین پاسخ با LM358 به دست آمد و کیفیت صدای خروجی از میکروفن کاملاً با کیفیت بود.مدار تقویت کننده برای میکروفن به شکل زیر است:

lm358 mic amp1

lm358 pinout

در مدار بالا در صورتی که صدای خروجی خیلی بالا بود باید مقدار مقاومت 100k را با یک مقاومت 10k تغییر داد که میزان تقویت کنندگی کاهش یابد.در واقع صداری خروجی از معادله ی زیر پیروی میکند:

V_OUT_UC = – V_IN * R5 / R4 + VCC / 2 = – 100 * V_IN + VCC / 2

مبدل دیجیتال به آنالوگ در خروجی

در خروجی میتوان از مبدل pwm برای تولید صدا استفاده کرد ولی در تست های انجام شده کیفیت لازم را در خروجی نداشتیم لذا برای آشکار سازی صدا در خروجی از مبدل دیجیتال به آنالوگ مقاومتی بهره گرفتیم.این مبدل به شکل زیر طراحی شده است:

dac 2r

 

انتشار : ۴ آبان ۱۳۹۴

GPS با سیم 908 مکان یاب با SMS با کدویژن


GPS با سیم 908 مکان یاب با SMS با کدویژن

این پروژه در واقع ادامه ی پروژه ی SIM908 قدیمی موجود در سایت است که سعی کردم در این ورژن بهبود داده شود ومقادیر N , E را به درستی از GPS سیم 908 دریافت نماید.در این ورژن علاوه بر این که مکان از طریق SMS قابل ارسال است قابلیت کنترل چند رله نیز به سخت افزار اضافه شده است تا به راحتی بتوانید علاوه بر محل دستگاه آنرا خاموش و روشن نمایید.از جمله مزایای این پروژه این است که ماژول را خود میکرو روشن و خاموش میکند و در صورت پیدا نشدن NET میکرو چندیدن بار ماژول را خاموش و روشن مینماید.همچنین تمامی ارسالها بر اساس زیر برنامه بوده و شما میتوانید از زیر برنامه ها به هر شکلی استفاده نمایید.علاوه بر این در این پروژه از بافر و زیر برنامه ی جستجو در بافر استفاده شده و در نتیجه در صورت دریافت دیتا از سمت SIM908 هیچ کدام از دیتا ها از بین نمیروند.در واقع این پروژه بسیار حرفه ای تر از تمام پروژه های موجود برای SIM908 طراحی شده و به دلیل داشتن ساختار جستجو در بافر برای موارد خاص مورد نظر در صورت پیدا نشدن مورد مورد نطر باعث هنگ کردن سیتم نخواهد شد و این یکی از مهمترین دلایل قرار دادن ساختار جستجو در بافر بود.

دریافت زمان از شبکه

در این پروژه در هنگام دریافت SMS میتوانید زمان را هم دریافت کنید و از این زمان در راه اندازی RTC داخلی SIM908 بهره ببرید.در واقع زیر برنامه ی دریافت زمان در پروژه قرار دارد و شما کافی است از متغیر های زمان در پروژه بهره بگیرید.

نحوه ی عملکرد سیستم

برنامه به نحوی است که پس از دریافت هر اس ام اس کدی که از طرف ماژول به میکرو ارسال شده است را جستجو میکند که این کد(CMTI) پس از دریافت شدن به معنای دریافت اس ام اس جدید است و اس ام اس جدید توسط میکرو از مايول درخواست میگردد و محتوای آن بررسی میگردد که شامل کدام یکی از کدهای مشخص شده است.هر کدام از کدها به زیر برنامه ی مربوطه پرش خواهد شد. یکی از نکته های که در این برنامه رعایت شده این اسن که اس ام اس یه همان شماره ایی که درخواست داده ارسال میگردد.

  • کد 4444 برای ارسال شرایط محیطی که همان GPS است و شامل E,N میشود
  • کد 5555 بازگشت میزان شارژ موجود
  • کد 1110 خاموش کردن رله ی 1
  • کد1111 روشن کردن رله ی 1
  • کد 2221 روشن کردن رله دوم
  • کد 2220 خاموش کردن رله ی دوم
  • کد 3331 روشن کردن رله ی 3
  • کد 3330 خاموش کردن رله ی سوم.

توجه شود که قبل از همه ی کدهای بالا باید # قرار داده شود مانند شکل های زیر:

SMS GPS SIM908 SMS GPS SIM908 AVR

 

فیلم راه اندازی پروژه

 

gps sim908 1

gps sim908 1

gps sim908 1

قطعات مورد نیاز برای راه اندازی پروژه:

  • ماژول sim908 یک عدد
  • lcd کارکتری 2 در 16
  • میکرو atmega16a
  • خازن 3300uf با ولتاژ 6.3 یا ولتاژی در این حدود
  • سلف 100mH 3A بشکه ای
  • کریسال 11.592 مگاهرتزی
  • رگولاتور 7805
  • یک عدد مقاورمت 100 اهمی یک وات برای کاهش ولتاژ وردی رله ها
  • رله 5V تک کنتاکت 3 عدد (در صورتی که از رله ی 9V استفاده میکنید باید مقاورمت 100 اهمی را بردارید و جامپر قرار دهید)
  • ULN2003 یک عدد
  • یک عدد مقاومت 10 کیلو
  • یک عدد میکرو سویچ دو پایه
  • کانکتور ترمینال فونیکس 3 پایه 3 عدد
  • کانکتور دو پایه یک عدد
  • یک عدد پوش باتن 6 پین
  • دیود 1N4007
  • خازن 100 نانو 2 عدد
  • خازن 100 میکرو فاراد دو عدد

توجه کنید در این قطعات سلف و خازن و کیفیت آنها اهمیت دارد و از آنجایی که sim908 برای راه اندازی اولی در یک لحطه به 3 آمپر جریان احتیاج دارد و همچنین راه اندازی gps در این ماژول نیز جریان مورد نیاز را بیشار میکند لذا در صورتی که خازن 6.3 ولت موجود نبود باید برای مثال خازن 4400 میکرو فاراید 10 ولت تهیه نمایید برای سلف نیز در صورتی که 3 آمپر موجود نبود میتوانید دو سلف را موازی نمایید البته بدون سلف هم با خازن مناسب قابل راه اندازی خواهد بود.

زیر برنامه های موجود در برنامه

برنامه ی نوشته شده بر اساس زیر برنامه میباشد تا در پروژه های خود بتوانید از این زیر برنامه ها استفاده نمایید و برنامه های خود را راحتتر گسترش دهید.ذکر نام زیر برنامه ها برای آشنایی با ساختار زیر برنامه برای شما مفید است:

  • void power_up(void);
  • void send_condition();
  • void check_request(int);
  • void cmti(void);
  • void cmgr(void);
  • void cmgs(void);
  • void cusd(void);
  • void wait_to_get(char);
  • void CMGDA(void);
  • void CMGF1(void);
  • void at(void);
  • void ate0(void);
  • void puts1(char *str);
  • void puts2(char *str);
  • void ATCSQ(void);
  • void getok(void);
  • void GPSRD(void);
  • void GPSREAD(void);
  • void ATIPR(void);

انتشار : ۴ آبان ۱۳۹۴

gps با sim908 و avr به زبان بسکام (مکان یاب با sms)


با sim908 و avr به زبان بسکام (مکان یاب با sms)

در ادامه ی پروژه های مکان یاب با sms این بار با استفاده از زبان bascom همان کد قبلی را مه با کدویژن پیاده شده بود با استفادخ از بسکام پیاده کردم و در زبان بسکام با مشکلاتی برخورد کردم که در اینجا به این چالشها اشاره میکنم تا شما هم در طراحی پروژه ی gps با بسکام یا پروژه ای دیگر بتوانید از این تجریبات استفاده کنید.نکات موجود در این پروژه و نحوه ی برنامه نویسی حاوی تجربیاتی بسیار مفید در برنامه نویسی و الگوریتمی مناسب برای راه اندازی چنین پروژه هاییست.

نکات رعایت شده در راه اندازی sim908

  • در این برنامه از دستور WAITKEY یا INKEY استفاده نشده است چرا که این دستورات در صورت بروز خطا میکرو هنگ خواهد کرد
  • در این برنامه از بافر استفاده شده است و برای بافر از بافر سخت افزاری بهره گرفته ایم و خودمان بافر را تعریف کرده ایم چرا که دستور SERIN در بسکام برای این کار مناسب نیست و کنترل کاملی بر روی دیتای دریافتی نخواهیم داشت.
  • تست های انجام شده بر روی میکرو های atmega نشان میدهد که میکروی atmega128 با دستور input و SERIN وINKEY وWAITKEY میتواند دیتا ها را به راحنتی و بدون از دست رفتن دریافت کند ولی همین دستورات در میکروهای atmega16 , atmega8 , atmega32 در صورت اجرای if دچار خطا در دریافت هستند و دیتا ها را از دست میدهند ولی استفاده از از بافر سخت افزاری به صورت دستی در همه ی میکرو ها به طور کامل و بدون خطا به راحتی جواب میدهد.
  • در تست های انجام شده مشخص شد که بسکام فقط با باود 9600 بهترین عملکرد را دارد و در باود های با سرعت های کمتر دریافتها خطا دارند! این در حالی است که ما دوست داریم باود را روی 2400 ست کنیم.
  • حجم کدهای تولید شده برای بسکام بسیار بیشتر از حجم کدهای تولید شده در کدویژن است.
  • در این پروژه سعی شده تا جایی که ممکن است از قفل شدن میکرو جلوگیری شود و سرچ روی دیتا ها تا همان مقدار دریافت شده در بافر باشد و منتظر کارکتر خاصی نباشیم چرا که اگر آن کارکتر به هر دلیلی دریافت نشود میکرو هنگ میکند لذا برنامه به شکلی است که کارکترهای مورد نظر سرچ میشوند و در صورت موجود نبودن کارکتر میکرو به منوی اصلی باز میگردد و هنگ نمیکند.
  • نکته ی بعدی این است که sim908 در تغذیه بسیار حساس است و باید در ابتدای راه اندازی 3 آمپر جریان بکشد و باید خازن های بزرگی در وردی مدار در حدود 3300 میکرو فاراد در 5 ولت قرار داشته باشد و در صورتی که مدار شماتیک را ببینید میتوانید محل خازنها و ولتاژ آنها را پیدا کنید.در واقع اگر مقادیر این خازنها را مانند شماتیک انتخاب کنید به راحتی مدار با 7805 راه اندازی خواهد شد.

فیلم راه اندازی پروژه sim908 با بسکام (پروژه ی gps با avr)

 

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

برنامه به نحوی است که پس از دریافت هر اس ام اس کدی که از طرف ماژول به میکرو ارسال شده است را جستجو میکند که این کد(CMTI) پس از دریافت شدن به معنای دریافت اس ام اس جدید است و اس ام اس جدید توسط میکرو از مايول درخواست میگردد و محتوای آن بررسی میگردد که شامل کدام یکی از کدهای مشخص شده است.هر کدام از کدها به زیر برنامه ی مربوطه پرش خواهد شد. یکی از نکته های که در این برنامه رعایت شده این اسن که اس ام اس یه همان شماره ایی که درخواست داده ارسال میگردد.

  • کد 4444 برای ارسال شرایط محیطی که همان GPS است و شامل E,N میشود
  • کد 5555 بازگشت میزان شارژ موجود
  • کد 1110 خاموش کردن رله ی 1
  • کد1111 روشن کردن رله ی 1
  • کد 2221 روشن کردن رله دوم
  • کد 2220 خاموش کردن رله ی دوم
  • کد 3331 روشن کردن رله ی 3
  • کد 3330 خاموش کردن رله ی سوم.

توجه شود که قبل از همه ی کدهای بالا باید # قرار داده شود

قابلیت های برنامه

  • دریافت میزان شارژ
  • دریافت محل دستگاه
  • خاموش و روشن کردن 3 عدد رله که قابلیت افزایش تا میزان دلخواه شما را دارد

قطعات مورد نیاز برای راه اندازی پروژه:

  • ماژول sim908 یک عدد
  • lcd کارکتری 2 در 16
  • میکرو atmega16a
  • خازن 3300uf با ولتاژ 6.3 یا ولتاژی در این حدود
  • سلف 100mH 3A بشکه ای
  • کریسال 11.592 مگاهرتزی
  • رگولاتور 7805
  • یک عدد مقاورمت 100 اهمی یک وات برای کاهش ولتاژ وردی رله ها
  • رله 5V تک کنتاکت 3 عدد (در صورتی که از رله ی 9V استفاده میکنید باید مقاورمت 100 اهمی را بردارید و جامپر قرار دهید)
  • ULN2003 یک عدد
  • یک عدد مقاومت 10 کیلو
  • یک عدد میکرو سویچ دو پایه
  • کانکتور ترمینال فونیکس 3 پایه 3 عدد
  • کانکتور دو پایه یک عدد
  • یک عدد پوش باتن 6 پین
  • دیود 1N4007
  • خازن 100 نانو 2 عدد
  • خازن 100 میکرو فاراد دو عدد

توجه کنید در این قطعات سلف و خازن و کیفیت آنها اهمیت دارد و از آنجایی که sim908 برای راه اندازی اولی در یک لحطه به 3 آمپر جریان احتیاج دارد و همچنین راه اندازی gps در این ماژول نیز جریان مورد نیاز را بیشار میکند لذا در صورتی که خازن 6.3 ولت موجود نبود باید برای مثال خازن 4400 میکرو فاراید 10 ولت تهیه نمایید برای سلف نیز در صورتی که 3 آمپر موجود نبود میتوانید دو سلف را موازی نمایید البته بدون سلف هم با خازن مناسب قابل راه اندازی خواهد بود.

زیر برنامه های موجود در برنامه

برنامه ی نوشته شده بر اساس زیر برنامه میباشد تا در پروژه های خود بتوانید از این زیر برنامه ها استفاده نمایید و برنامه های خود را راحتتر گسترش دهید.ذکر نام زیر برنامه ها برای آشنایی با ساختار زیر برنامه برای شما مفید است:

  • Declare Sub Get_ok
  • Declare Sub Power_up
  • Declare Sub Atipr
  • Declare Sub Ate0
  • Declare Sub Cmgda
  • Declare Sub Cmgf1
  • Declare Sub Send_condition
  • Declare Sub Check_request
  • Declare Sub Cmti
  • Declare Sub Cmgr
  • Declare Sub Cusd
  • Declare Sub Wait_to_get(byval Ch As Byte)
  • Declare Sub Cls_buffer
  • Declare Sub Atcsq
  • Declare Sub Gpsrd
  • Declare Sub Gpsread

 

انتشار : ۴ آبان ۱۳۹۴

روشن کردن لامپ فرابنفش و فلورسنت با 6 ولت


راه اندازی لامپ ماوراء بنفش و لامپهای فلورسنت با 6 ولت


روشن کردن لامپ فرابنفش

این نقشه یک مدار بسیار ساده لامپ فرابنفش یا لامپ های مهتابی کوچک است که نیاز به ولتاژ 6 ولت دارد. معمولاً از لامپهای فرابنفش برای ساخت دستگاههای تست اسکناس و یا دستگاههای جذب حشرات و پشه کش های برقی استفاده می شود. همچنین از لامپهای فلورسنت کوچک نیز جهت ساخت چراغ های روشنایی دستی و روشنایی اضطراری استفاده می شود. جهت مشاهده نقشه کامل، شماتیک، PCB و لیست قطعات ادامه مطلب را مطالعه نمایید.

 

 

در زیر نقشه پشت و روی فیبر مدار را ملاحظه می کنید ( به جهت قرار گرفتن Q1 و استفاده از هیت سینک دقت کنید )












قطعه تعداد توضیحات
C1 1
0.0047uf Mono Capacitor
C2 1
0.1uf Disc Capacitor
D1, D2 2
1N4007 Diode
FTB 1
Filtered Blacklight Tube
IC1 1
555 Timer IC
P1 1
10k Trim Pot
Q1 1
TIP30 PNP Power Transistor
R1 1
470 Ohm Resistor
R2 1
270 Ohm Resistor
S1 1
Slide Switch
T1 1
Medium Yellow Inverter Transformer
MISC 1
IC Socket, Heat Sink For Q1, Screw, Nut, Wire and PC Board



ارسال توسط سید حمید موسوي ونهری

انتشار : ۴ آبان ۱۳۹۴

اگر به یک وب سایت یا فروشگاه رایگان با فضای نامحدود و امکانات فراوان نیاز دارید بی درنگ دکمه زیر را کلیک نمایید.

ایجاد وب سایت یا
فروشگاه حرفه ای رایگان

پرفروش ترین ها

    پر فروش ترین های فورکیا


      پر بازدید ترین های فورکیا


      مطالب تصادفی

      • الگوریتم ضرب کننده Booth و پیاده سازی آن با زبان VHDL
      • پروژه ی رطوبت سنج و دما سنج

      تمام حقوق مادی و معنوی این وب سایت متعلق به "" می باشد