![](https://duino4projects.com/wp-content/uploads/2019/09/Using-NXT-Components-With-a-Micro-Controller.jpg)
این راهنمای استفاده از موتورها و حسگرهای مجموعه LEGO NXT با Parallax Basic Stamp II یا BS2 است. با این حال، به جای ارائه شماتیک و کد نمونه برای BS2، من برخی از تئوری ها را در مورد نحوه عملکرد سنسورها نیز ارائه خواهم کرد. به این ترتیب، شخصی که از آردوینو یا میکروکنترلر دیگری استفاده می کند، باید این راهنما را حداقل تا حدودی مفید بداند.
دو منبع اصلی اطلاعات من عبارتند از:
LEGO Hardware Developer Kit http://mindstorms.lego.com/en-us/support/files/default.aspx
TheCompBlog: Hacking the NXT http://www.thecompblog.com/2012/ 07/hacking-lego-nxt-part-1.html
-اگر از آردوینو استفاده می کنید، دومی راهنمای مناسبی است. اما توجه داشته باشید که شماتیک های او اغلب پین های 2 و 3 را به جای زمین به + 5 ولت متصل می کنند. پایه های 2 و 3 برای همه سنسورها به جز دکمه ای که فقط یک سوئیچ است زمین می شوند.
پیشنهادی دارید؟ آیا چیزی برای درک دشوار، نادرست یا گم شده است؟ نظر بدید ببینم چیکار میتونم بکنم من می خواهم این دستورالعمل ها راهنمای جامعی برای استفاده از BS2 با مجموعه NXT باشد. اگر از میکروکنترلر دیگری استفاده میکنید و گیر کردهاید، ممکن است نتوانم کمکی بکنم، اما پرسیدن ضرری ندارد.
من امیدوارم که به زودی یک آردوینو دریافت کنم، و اگر این راهنما به خوبی انجام شود، یک راهنمای تکمیلی برای استفاده از آردوینو به همراه کدهای نمونه برای آن ارسال خواهم کرد. اگر دوست دارید به من اطلاع دهید.
مرحله 1: کابل NXT
![](https://duino4projects.com/wp-content/uploads/2019/09/NXT-Cables.jpg)
اول از همه، ما باید سخت افزار NXT خود را به میکروکنترلر خود متصل کنیم. چند راه برای این کار وجود دارد.
من انتخاب کردم که مجموعه ای از کابل های NXT را که از http://mindsensors.com سفارش داده بودم، جدا کنم . سیمها را جدا کردم، آنها را از بین بردم، سیمهای هسته جامد کوتاه را روی هر یک لحیم کردم، هر مفصل لحیم کاری را گرم کردم، و کل دسته سیمها را گرم کردم و یک رابط ایجاد کردم.
-در گذشته می توانید یک سیم بلند بخرید و با بریدن از وسط آن دو سیم به هم متصل کنید.
-همچنین مطمئن شوید که سیم های خود را مرتب نگه دارید. سیمهای NXT دارای کد رنگی هستند، اما سیمهای حسگرهای ذهنی اینگونه نیستند.
-برخی از افراد کابل های RJ-12 اصلاح شده را ساخته اند و برخی دیگر فقط با اصل کار کرده اند.
گزینه دیگر خرید یک جک زن از حسگرهای ذهنی است که نیاز به آشفتگی کمی با آهن لحیم کاری ندارد و بسیار تمیزتر به نظر می رسد.
سیم ها از سمت قفل از راست به چپ شماره گذاری می شوند، بنابراین نزدیک ترین سیم به قفل 1 و دورترین سیم از چفت 6 است.
رنگ لگو آنها را به صورت زیر کدگذاری می کند:
1-سفید
2-سیاه
3-قرمز
4-سبز
5-زرد
6-آبی
(برای مرجع به تصویر مراجعه کنید)
مرحله 2: سنسور لمسی
![](https://duino4projects.com/wp-content/uploads/2019/09/The-Touch-Sensor.jpg)
بیایید با حسگر لمسی شروع کنیم زیرا ساده ترین بخش است. شما همچنین می توانید از این استفاده کنید تا مطمئن شوید که سیم های خود را در ترتیب درستی قرار داده اید. استفاده از حسگر لمسی بسیار ساده است: این یک سوئیچ SPST است که معمولاً باز است، که اساساً به این معنی است که وقتی دکمه را فشار میدهید «روشن» و وقتی آن را رها میکنید «خاموش» است. پایه 1 یکی از ترمینال ها و پایه های 2 و 3 دیگری هستند (از یکی یا هر دو استفاده کنید). اگر کار نمی کند، ممکن است سیم های خود را به عقب برگردانید. سعی کنید از پایه 6 برای یک ترمینال و از پایه 4 و 5 برای ترمینال دیگر استفاده کنید.
مرحله 3: موتور
![](https://duino4projects.com/wp-content/uploads/2019/09/The-Motor.jpg)
موتور NXT یک قطعه سخت افزاری بسیار زیبا است و همچنین استفاده از آن نسبتاً آسان است. دارای یک موتور 9 ولت DC با گیربکس و یک رمزگذار دوگانه با وضوح تقریبی 1 درجه است.
پایه های 1 و 2 سرهای موتور DC هستند. یک پتانسیل اعمال کنید و موتور می چرخد. پین های سوئیچ را بزنید و موتور به سمت دیگری می چرخد. ساده است. من از پل H برای این کار استفاده می کنم.
رمزگذار تقریباً به همین سادگی است. پایه 3 زمین و پایه 4 Vcc (5V) است. اینها برق انکودر را تامین می کنند. پایه 5 و پایه 6 دو خروجی رمزگذار هستند. اگر کسی با رمزگذارهای دوگانه آشنا نیست، نحوه کار آنها به شرح زیر است:
در جایی به گیربکس موتور یک چرخ رمزگذار متصل است که دارای یک دسته شکاف شعاعی در آن است. با بقیه گیربکس می چرخد. دو سنسور مادون قرمز طوری قرار داده شده اند که شکاف ها و پره های شعاعی به طور متناوب می شکند و پرتو IR را بازیابی می کنند و باعث ایجاد 1 و 0 متناوب می شوند. بنابراین، هنگامی که موتور در حال چرخش است، هر خط با نرخی که توسط سرعت موتور تعیین می شود، 101010101010 را می خواند. این برای کنترل سرعت و ترجمه مفید است. هر چه تعداد 1 و 0 بیشتر باشد، دورتر رفته اید. هر چه سریعتر متناوب شود، سریعتر پیش می روید.
پس چرا به دو رمزگذار نیاز داریم؟ برای تعیین جهت از آنجایی که دو سنسور IR آفست هستند، الگویی را تولید می کنند که مختص جهت چرخش است. اگر موتور یک طرفه بچرخد، خروجی (پین 5 پین 6) 11، 10، 00، 01 را تکرار می کنند. اگر موتور به سمت دیگری بچرخد، الگوی معکوس می شود: 11، 01، 00، 10، تکرار کنید. با مشاهده الگو می توانید جهت چرخش را تعیین کنید. من در مورد عقربههای ساعت و خلاف جهت عقربههای ساعت صحبت میکنم، اما این بستگی به نحوه نگهداشتن موتور دارد و واقعاً به راحتی میتوان آن را از طریق آزمایش تشخیص داد.
کدگذاری مهر اصلی برای استفاده از رمزگذار:
برای تعیین سرعت موتور از تابع شمارش استفاده می کنم. به سادگی تعداد ضربه های هر یک از پین های رمزگذار را برای مدت زمان مشخصی بشمارید و عددی متناسب با سرعت موتور بدست خواهید آورد.
COUNT پین 5، 100، سرعت