Мазмуну:
- 1 -кадам: Fusion 360 жана Басып чыгаруу бөлүктөрүн моделдөө
- 2 -кадам: Кабелдик жана монтаждоо
- 3 -кадам: Arduino коду - ISS позициясын реалдуу убакытта алуу
- 4 -кадам: Final Arduino Code
- 5 -кадам: ISS Trackerден ырахат алыңыз
Video: ISS көзөмөлдөө чырагы: 5 кадам (сүрөттөр менен)
2024 Автор: John Day | [email protected]. Акыркы өзгөртүү: 2024-01-30 10:40
Көбүнчө, ISS асманды карап турган жерди ойлонуп жатам. Бул суроого жооп берүү үчүн, мен реалдуу убакытта ISSтин кайда экенин так билүү үчүн физикалык объект жасадым.
ISS Tracking Lamp - бул Интернетке туташкан лампа, ал ISSти дайыма көзөмөлдөп турат жана аны жер бетинде жайгашкан жерди көрсөтөт (3D форматында басылган).
Бонус: чырак ошондой эле Жердин күнөстүү тарабын неопиксель менен көрсөтөт! ??
Ошентип, бул Нускамада WEMOS D1 Mini, stepper мотору, servo мотор, лазер жана 3D бөлүктөрүнүн негизинде бул лампаны куруу үчүн ар кандай кадамдарды көрөбүз.
Мен Aliexpressтен сатылып алынган 3D басылган Жерден башкасын өзүм курам.
Программалык камсыздоо:
- Arduino негизделген код
- API ISS Жайгашкан жери: Ачык эскертүү - ISSтин учурдагы жайгашкан жери (Натан Берги тарабынан)
- Маалыматтарды талдоо: ArduinoJson Library (Бенуа Бланчон тарабынан)
CAD & Бөлүктөрү:
- Диаметри 18 см болгон 3D Жер (Aliexpressтен сатылып алынган: бул жерде)
- 3D басылган мотор колдоосу - Fusion 360 менен иштелип чыккан жана Prusa i3 MK2S менен басылган
- Жез түтүк
- Бетон негизи, француз викингдери менен жасалган
Аппараттык:
- Микроконтроллер: Wemos D1 Mini (wifi антеннасы интеграцияланган)
- Servo EMAX ES3352 MG
- Stepper Motor 28byj-48 (ULN2003 айдоочу тактасы менен)
- 10 NeoPixels LED
- 405 нм толкун узундугундагы лазер
- Limit Switch
- 5V 3A Power Supply
1 -кадам: Fusion 360 жана Басып чыгаруу бөлүктөрүн моделдөө
Бардык жабдыктарды орнотуу үчүн, биз 3D бөлүктөрүндө өзөктүк монтаж базасын түзөбүз. Бөлүктөр Thingiverseде жеткиликтүү бул жерде.
3 бөлүк бар:
1) Колдоо Stepper Longitude
Бул бөлүк тепкич моторун, WEMOS, Neopixels тилкесин жана жез түтүктү орнотуу үчүн жасалган
2) Колдоо которгуч
Бул бөлүк чек которгучту орнотуу үчүн жасалган (кадамды кеңдикке -0 °/-180 ° көрсөтүү үчүн). Ал тепкичтин үстүнө сайылган
3) Колдоо Servo Latitude
Бул бөлүк servo моторун орнотуу үчүн жасалган. Колдоо сервосу тепкич моторуна орнотулган
Бардык бөлүктөр Prusa I3 MK2Sде, кара PETG жипчеси менен басылган
2 -кадам: Кабелдик жана монтаждоо
Бул схемада 5V 3A кубаттуулугу болот (ошол эле камсыздандырууну айдоочу, лазер, неопикселдер жана WEMOS үчүн)
Төмөнкү эскиз боюнча, биз электр энергиясын түз эле жогорудагы элементтерге параллелдүү түрдө ширетишибиз керек:
- Stepper Driver
- Лазер
- Неопикселдер тилкеси (NB: чындыгында эскизде көрсөтүлгөндөй 8 эмес, 10 неопиксел бар)
- WEMOS
Андан кийин, биз WEMOSко ар кандай элементтерди туташтыруубуз керек:
1) Бул тизмедеги тепкич айдоочу:
- IN1-> D5
- IN2-> D6
- IN3-> D7
- IN4-> D8
2) Серво мотору төмөнкүлөр:
Маалымат Servo Pin -> D1
3) Neopixels төмөндөгүдөй:
Маалымат Neopixels Pin -> D2
4) төмөнкү чектөө которгуч:
GND жана D3 которгучтун эки казыгы
Чектөө которгучту биз которгучту басканда, схема ачылган/үзүлгөндөй кылып туташтыргыла (ошондуктан эч нерсе басылбаса, схема жабылат). Бул чыңалуу чокусунан улам туура эмес лекциядан качуу үчүн.
3 -кадам: Arduino коду - ISS позициясын реалдуу убакытта алуу
ЭКСтин позициясына жетүү үчүн эки моторду айдаш үчүн, биз ISSтин абалын реалдуу убакытта алышыбыз керек:
- Алгач биз бул жерде Open Notify'ден API колдонобуз
- Андан кийин, ISS жайгашкан жеринин жөнөкөй маанисин алуу үчүн маалыматтарды талдоо керек: Parsing data: ArduinoJson Library (Benoit Blanchon тарабынан)
#include <ESP8266WiFi.h #include <ESP8266HTTPClient.h #include <ArduinoJson.h // WiFi Параметрлери const char* ssid = "XXXXX"; const char* password = "XXXXX"; void setup () {Serial.begin (115200); WiFi.begin (ssid, сырсөз); while (WiFi.status ()! = WL_CONNECTED) {кечиктирүү (1000); Serial.println ("Туташууда…"); }}
Бул программа NodeMCUду WiFi менен байланыштырат, андан кийин APIге туташат, маалыматтарды алат жана аны сериялык түрдө басып чыгарат.
void loop () {
if (WiFi.status () == WL_CONNECTED) // WiFi статусун текшерүү {HTTPClient http; // HTTPClient классынын объектиси http.begin ("https://api.open-notify.org/iss-now.json"); int httpCode = http. GET (); // Кайтып келүүчү кодду текшериңиз, эгер (httpCode> 0) {// Parsing const size_t bufferSize = JSON_OBJECT_SIZE (2) + JSON_OBJECT_SIZE (3) + 100; DynamicJsonBuffer jsonBuffer (bufferSize); JsonObject & root = jsonBuffer.parseObject (http.getString ()); // Параметрлери const char* message = root ["message"]; const char* lon = root ["iss_position"] ["longitude"]; const char* lat = root ["iss_position"] ["latitude"]; // Сериалдык мониторго чыгуу Serial.print ("Message:"); Serial.println (билдирүү); Serial.print ("Узундук:"); Serial.println (lon); Serial.print ("Latitude:"); Serial.println (лат); } http.end (); // Байланышты жабуу} кечигүү (50000); }
4 -кадам: Final Arduino Code
Төмөнкү Arduino коду ISSтин жайгашуусун лазерди Жердин бетине керектүү жерге жылдырат, жана күндүн тийиши менен Жердин бетине тийген күндүн нурун тийүү үчүн тиешелүү Неопикселдерди жарык кылат.
Бонус 1: Чырак күйгүзүлгөндө, инициализация фазасында лазер лампанын ордун көрсөтөт (id: роутер турган жер)
Бонус 2: ISS чырактын жайгашкан жеринин жанында болгондо (+/- 2 ° узун. Жана +/- 2 ° лат.), Бардык неопиксельдер акырын көзүн ирмешет
5 -кадам: ISS Trackerден ырахат алыңыз
Сиз ISS Tracking Lamp жасадыңыз, ырахат алыңыз!
Биринчи жолу авторлор конкурсунда биринчи сыйлык
Сунушталууда:
Аналогдук джойстикти колдонуу менен 2 сервону көзөмөлдөө: 5 кадам (сүрөттөр менен)
Аналогдук джойстикти колдонуп 2 сервону башкаруу ал
OLED дисплей долбоору менен GPSти көзөмөлдөө: 5 кадам (сүрөттөр менен)
OLED Дисплей Долбоору менен GPS Мониторинги: Саламатсыздарбы, баарына, бул тез макалада мен сиз менен долбоорум менен бөлүшөм: ATGM332D GPS модулу SAMD21J18 микроконтроллери жана SSD1306 OLED 128*64 дисплейи менен, мен бул үчүн Eagle Autodeskте атайын ПХБ кургам жана аны программалайм. Atmel studio 7.0 жана ASFти колдонуу
Raspberry Pi - Автономдуу Mars Rover OpenCV объектилерин көзөмөлдөө менен: 7 кадам (сүрөттөр менен)
Raspberry Pi - Автономдуу Mars Rover OpenCV объектилерине көз салуу менен: Raspberry Pi 3, ачык резюме объектилерин таануу, ультрадыбыштуу сенсорлор жана редуктурлуу DC моторлору менен иштейт. Бул ровер үйрөтүлгөн нерселерди көзөмөлдөп, каалаган жерде кыймылдай алат
Raspberry Pi менен температураны жана нымдуулукту көзөмөлдөө: 6 кадам (сүрөттөр менен)
Raspberry Pi менен температураны жана нымдуулукту көзөмөлдөө: Жай келе жатат, кондиционери жоктор үй ичиндеги атмосфераны кол менен башкарууга даяр болушу керек. Бул постто мен адамдын жайлуулугу үчүн эң маанилүү параметрлерди өлчөөнүн заманбап жолун сүрөттөп жатам: температура жана нымдуулук. Т
Xbox Controller тарабынан жүздү көзөмөлдөө жана көзөмөлдөө менен кайыр суроочу робот - Arduino: 9 кадам (сүрөттөр менен)
Xbox Controller тарабынан жүздү көзөмөлдөө жана көзөмөлдөө менен кайыр суроочу робот - Arduino: Биз кайыр суроочу робот кылабыз. Бул робот кыжырдантууга же өтүп бара жаткан адамдардын көңүлүн бурууга аракет кылат. Бул алардын жүздөрүн аныктап, аларга лазер менен атууга аракет кылат. Эгер роботко тыйын берсеңиз, ал ыр ырдайт жана бийлейт. Роботко керек болот