پروتیوس چیست؟ نرم افزارهای مختلفی برای شبیه سازی در مهندسی مورد استفاده قرار میگیرند. این نرم افزارها وظیفه بوجود آوردن شرایط شبیه ساز ی شده را در هر یک از علوم مهندسی به عهده دارند. در الکترونیک هم نرم افزارهای بسیاری وجود دارند که میتوانند به شما برای طراحی یا شبیه سازی اولیه یاری برسانند. یکی از این نرم افزارها پروتیوس میباشد. این نرم افزار، ابزار بسیار قدرتمندی در شبه سازی آنالوگ، شبیه سازی دیجیتال و همچنین طراحی مدار چاپی یا همان PCB در اختیارتان قرار میدهد. پروتیوس در قسمت شبیه سازی آنالوگ، بسیار منحصر به فرد عمل میکند. با کمک این نرم افزار میتوانید مقدار ولتاژها را به صورت طیف رنگ بر روی اتصالات طراحی شده تان ببینید. همچنین پروتیوس با نشان دادن جهت جاری شدن جریان، با یک فلش کوچک بر روی اتصال، کمک شایان توجهی در تفهیم اصول اولیه الکترونیک است. همچنین پروتیوس، در قسمت طراحی و شبیه سازی دیجیتال با نمایش سطوح منطقی بر روی اتصالات تحلیل دیجیتال را برای شما بسیار آسان میکند. و در کنار این قابلیت، با کتابخانه بسیار قدرتمندش، میتواند میکروکنترلرهای فراوانی را در اختیارتان قرار دهد تا هم برنامه نرم افزاری و هم عملکرد سخت افزاری آن را مورد بازبینی قرار دهید. هرچند که حرفه ای ها از پروتیوس، برای شبیه سازی دیجیتال خیلی استفاده نمیکنند، اما این نرم افزار میتواند کمک شایان توجهی برای تفهیم اصول اولیه آنالوگ و دیجیتال برای میتدی ها باشد. آردوینو چیست؟ آردوینو ابزاری است برای تولید کامپیوترهایی که نسبت به کامپیوتر شخصی شما، مقدار بیشتری از دنیای فیزیکی را احساس و کنترل می کنند. این ابزار، یک پلت فرم محاسباتی فیزیکی open - source است که بر اساس یک برد میکروکنترلر ساده تهیه شده، و نیز یک محیط توسعه برای نوشتن نرم افزار جهت کار با برد می باشد. آردوینو می تواند جهت ایجاد اشیای تعاملی، گرفتن ورودی از تعداد زیادی سوییچ و حسگر، و کنترل تنوعی از لامپ ها، موتورها، و سایر خروجی های فیزیکی به کار گرفته شود. پروژه های آردوینو می توانند مستقل باشند، و یا با نرم افزاری که روی کامپیوتر شما در حال اجراست (مثل Flash ، Processing ، MaxMSP ) ، ارتباط برقرار کند. شما می توانید بردها را به طور دستی مونتاژ کنید و یا به صورت از پیش مونتاژ شده، خریداری کنید محیط برنامه نویسی open - source را می توانید به صورت رایگان دانلود کنید. زبان برنامه نویسی آردوینو، یک پیاده سازی از Wiring (یک پلت فرم محاسباتی و فیزیکی مشابه) است، که بر اساس محیط برنامه نویسی چندرسانه ای Processing کار می کند. دراین پروژه که درنرم افزارهای پرتعوس و اردواینو انجام شد مایک قفل رمز دارطراحی کردیم. درابتدادرداخل نرم افزارپرتعوس شکل کلی کاررا طراحی کردیم وابزارهای که به کاربردیم: ARDUINO UNO KEYPAD - SMALLCALC LED - BIGY RES RLY - SPNO TERMINAL DC GROUND ودرتصویرزیرنحوه اتصال انها رامیبینیم: مادرنرم افزار اردوینو برای قسمت کی پد هردکمه را تعریف میکنیم که جایگاه هردکمه درکدام ردیف وستون قراردارد. برای قسمت خروجی کار رله قرار داد ه ایم که یه سر آن را به زمین و یه سر آن را به پایه وصل کرده ایم. اگر اختلاف ولتاژ دوسر رله برابر منطقی شود اتصال برقرارمیشود و جریان ازسیم عبورمیکند و چراغ ماروشن میشود. وقسمت ترمینال نیز به دوپایه rdx / txd است که آن را به اردواینو وصل میکنیم تازمانی که کاربر اعدادرا وارد کرد اعدا را بما نشان دهد درواقع مثل lcd عمل میکند. در این طراحی قصدما این بود وقتی کاربر یک رمز رقمی وارد کندو با کلیک روی on / c آن راتایید کند و اگررمز درست باشد چراغ ال ای دی روشن شود. نکته هایی که درطراحی آن مهم است این است که ما چون رله خودرا به پاییه خود وصل کردیم باید ولتاژآن راهم قراردهیم که بصورت خودکارولتاژ آن است. درادامه درنرم افزار آردواینو ما باید کتابخانه کی پد رادانلود کنیم و هرکتابخانه ای که در آردواینو دانلود میشود دارای مثال هایی است و ما با استفاده ازمثال خود, کتابخانه مقداری از آن راتغییر دادیم کدهای لازم رابه آن اضافه کردیم. که طبق تصویربالا کی پد مادارای ردیف و ستون است باید هرکدوم ازآنها را به پایه آردواینو وصل کنیم و پایه هایی که تعریف کرده ایم را درکدنویسی مشخص کنیم که هرکدام ازپایه های هرردیف یا ستون به کدام پایه اردوینو وصل شده است. بعد از تعریف اتصال هرکدام ازپایه ها, قسمت مهم رله ما است که به پاییه وصل شده است وخروجی مارانمایش میدهد. درقسمت کدنویسی آن میگوییم که کاربر زمانی که روی دکمه کی پد کلیک کرد اگربرابربا on / c بودیعنی قصد دارد خروجی بگیرد پس اگر عدد وارد کرده اگربرابر بارمز بود و درست بود چراغ led ماروشن میشود. اگرروی کی پد کلیک کرد و هرکدوم ازدکمه ها ومخالف on / c بود یعنی برابر با آن نبود آن مقدار رابگیر و داخل متغییر نگه دارد که ما در کدمان آن را STR تعریف کردیم. و چون رمز مابصورت رشته است و تک کاراکتری نیست پس لازم است هربارکه روی دکمه ای کلیک میشود آن را ذخیر کندو هنگامی که روی دکمه on / c کلیک کرد آن اربا رمز مقایسه کند.