Wpis z mikrobloga

Dzień dobry,
W raz z kołem naukowym na moim uniwersytecie realizujemy projekt czujników do badania warunków klimatycznych w ramach grantu od ministerstwa (Mamy do dyspozycji 2.5tys na partię prototypową oraz 12tys na partię "produkcyjną"). Projekt zakłada skonsutrowanie 60 modułów czujników wraz z elektroniką wykonawczą, o którą też będę miał kilka pytań w dalszej części tego posta. Chciałbym przede wszystkim zapytać się i skonsultować pewne koncepcje inżynieryjne jak do tego projektu chcemy podejść. I jak Wy byście do tego podeszli?

O module radiowym
Wybrałem moduły od Ebyte z racji kilku fajnych funkcji RSSI, Opcja Deep Sleep oraz Woke on Radio (dla oszczędzania akumulatorów w modułach które będą na zewnątrz, o nich za chwilę)
Moduły radiowe będą dwa rodzaje z racji że zgodnie z Polskim prawem możemy nadawać na paśmie ISM do max 500mW moduły 1W trzeba będzie ograniczyć programowo, oczywiście też trzeba brać pod uwagę duty cycle 10%.
Projekt zakłąda wykorzystanie łączności radiowej na częstotliwości 868MHz z modulacją LoRa.

https://www.cdebyte.com/products/E220-900T22D
https://www.cdebyte.com/products/E220-900T30D

Chciałbym teraz przejść do koncepcji na czujniki oraz płytkę PCB głównej elektroniki
Moduły 100mW będą w samych modułach natomiast moduły 500mW planowałem wykorzystać do stacji przekaźnikowych.

O CZUJNIKACH:

Moduły najprawdopodobniej będą miały dwie wersje

Montowane wewnątrz budynku uniwerystetu

Montowane na zewnątrz budynku uniwerystetu


Czujniki montowane wewnątrz:

- Czujnik BME280 (temperatura, ciśnienie i wilgotność)

- Czujnik światła UV od Waveshare 9537

- Czujnik poziomu dzwięku oparty o LM386

- Czujnik natężenia światła widzialnego BH1750

- Czujniki montowane na zewnątrz:

- Czujnik PM2.5 PM10 SDS011

- W niektórych modułach zew. jest plan zamontować kamerkę OV7670 z dodatkową pamięcią FIFO by spróbować zbadać przesył innego typu danych niż telemetria


O GŁÓWNEJ ELEKTRONICE
Chciałbym by moduły działały sobie na Atmedze8 z zegarem 16MHz wydaje mi się, że spokojnie powinien wystarczyć. Dodatkowo koniecznie chciałbym dorzucić złącze ISP do programowania
Na główną elektronikę miałem dwie główne koncepcje (jeśli chodzi moduły wewnętrzne)
Pierwsza zakładała zbudowanie większych modułów i przymocowanie ich taśmą w stylu Tesa do ściany i użycie zasilaczy 5V i zasilanie płytek ze złącza DC JACK
Druga koncepcja zakłada zrobienie coś w stylu hamburgera, daughterboard'a gdzie główna płytka z procesorem, modułem radiowym mosfetami do sterowania zasilaniem czujników oraz druga płytka gdzie by były podpinane moduły czujników by była przykręcona na tulejki dystansowe nad nią i była by połączona albo taśmą FFC albo zwyczajnymi goldpinami

W tym przypadku był taki koncept by spróbować zaprojektować obudowy w 3D i je wydrukować by można było wkomponować w obudowę wtyczkę zasilacza 5V i spróbować zrobić w ten sposób zwarty moduł wpinany do gniazdka

MODUŁY ZEWNĘTRZNE
Jeśli natomiast chodzi o moduły zewnętrzne koncepcja zakładała użycie akumulatorów Li-On oraz układu TP4056 z mosfetem zabezpieczającym, oraz diodą Schottkiego, oraz usypianiu modułu radiowego oraz procesora i wybudzaniu go przez system Woke On Radio, który jest w tych modułach radiowych od Ebyte
Dodatkowo tutaj chciałem pokryć to PCB jak i niektóre moduły powłoką konformalną w sprayu

DEBUGOWANIE PCB
Jeśli chodzi o debugowanie PCB też mi by na tym zależało

Koncepcja mniej więcej jest taka:

Testy pointy:

- Główna linia zasilania 5V

- Zasilanie sekcji modułów 3.3V

- Zasilanie sekcji modułów 5V

- GND

- Testy pointy pod i2C (SDA,SCL)

Złącza debugujace:

- Dedykowane złącze debug UART

- Zworka na PCB załączająca tryb debug'a mikrokontolera (ustawia jakiś pin na wysoki) i w kodzie mikrokontoler to wykrywa i wszystkie software seriale są przekierowywane na złącze debug serial

Czy coś więcej warto by było tutaj dodać?

O projektowaniu PCB pod produkcje
Chciałbym tutaj teraz poruszyć temat jak najlepiej podejść do projektowania na większą skalę, dotychczas projektowałem wszystko w EasyEda od JLCPCB i od nich zamawiałem natomiast w tej sytuacji może być to problematyczne (chociaż nie wiem, czy aż tak, że to jakaś Polska firma musi nam polutować to maszynowo, wszystkie pliki niezbędne EasyEda dostarcza)

Na zakończenie dziękuje za przeczytanie, za ocenę tych koncepcji, wszelakie porady na co powinniśmy zwrócić uwagę przy projektowaniu elektroniki modułów itd.

#elektronika #elektronikadiy #diy #krotkofalarstwo #arduino #mikrokontrolery
  • 29
  • Odpowiedz
@kuba802802 fajny pomysł i rozwiązania. Osobiście zamiast atmegi wziąłbym jakiegoś STMa, ze względu na prostotę konfiguracji w CubeMX i architekturę 32bitowa co może być pomocne przy obliczeniach danych z czujników. Załóż tag i wołaj z postępem prac.
  • Odpowiedz
@kuba802802 #!$%@? jakie grosze dają na badania. Kupcie coś na aliekspres żeby wam zaliczył a za resztę kasy bilety na zachód. Albo jeden z was niech zrobi prawko C+E (ledwo starczy kasy) a reszta ucieknie na zachód pod podwoziem jego naczepy.
  • Odpowiedz
@kuba802802: Jak to ma być rozwiazanie LE to warto zainteresować się jakimś nrf z Zephyrem. Na spokojnie idzie się wyrobić w 700 uA na trybie uśpienia i dynamiczną inicjalizacją peryferiów, a jak wyłączane czujniki będą to jeszcze mniej. Wybór Lory do komunikacji moim zdaniem bardzo dobry. Powodzenia z projektem, dawaj znać co i jak idą postępy.
  • Odpowiedz
Atmedze8 z zegarem 16MHz


@kuba802802: Tak jak @Pan_Leszy pisze. Nie idź w to, a szczególnie nie w Atmega8. Nrf ma wszystko w sobie:i radio, MCU, peryferia programator i debuger. Pewnie są też gdzieś moduły ze zintegrowanymi ładowarkami. Ciekawą opcją jest też ESP32 i WiFi long range mode.

  • Odpowiedz
  • 0
@BeginEnd: Kojarzę NRF, ale boje się bardzo, że nam zasięgowo to nie wyrobi :( A kwestia jak się fala będzie w budynku rozchodzić też będzie obiektem badań. Plus nie wiem czy formalnie mogą się do nas przyczepić, że to nie jest LoRa na etapie opisywania i powstawania artykułu naukowego.

A generalnie jest fajna biblioteka już gotowa do tych modułów https://github.com/xreef/EByte_LoRa_E220_Series_Library
Dużo ma funkcji i jest całkiem spoko na pierwszy rzut oka,
kuba802802 - @BeginEnd: Kojarzę NRF, ale boje się bardzo, że nam zasięgowo to nie wyr...

źródło: ebyte

Pobierz
  • Odpowiedz
@kuba802802: Tylko ci mówię jakie są moje doświadczenia w tym temacie.

Nie mam doświadczenia z LoRa. Robiłem projekty na Zigbee i jeżeli jest to coś podobnego to po pierwsze do przesyłania danych z czujników daje radę na bardzo duże odległości. Do przesyłania strumieni danych - zapomnij.

https://www.cdebyte.com/products/E220-900T22D

https://www.cdebyte.com/products/E220-900T30D


@kuba802802: Swoją drogą, to są tylko moduły radiowe (z tego co na szybko czytam - popraw mnie jeżeli się mylę), i nie
  • Odpowiedz
  • 0
@BeginEnd: o strumieniach to nawet nie myślałem raczej jedno zdjęcie na kilka godzin (może częściej). Plan na atmegę był taki aby była głównym procesorem, który odbiera dane od stacji bazowej że potrzebuje danych załącza czujniki pobiera dane przygotowuje ramkę i nadaje ramkę telemetryczną przez ten moduł radiowy wydaje mi się że do takiej brudnej roboty i powiedzmy dosyć prostej atmega powinna się nadać, ale i tak dziękuję za porady przeanalizuje to
  • Odpowiedz
  • 0
@BeginEnd: Plus chcieliśmy kodować firmware z PlatformIO, raczej główny processing danych byłby na serwerze, a te procesory w modułach jak wspomniałem by były takimi zbieraczami po prostu
  • Odpowiedz
@kuba802802 wszystko fajnie ale o atmega8 to zapomnij. Na programatorze od pralki byłoby lepiej...
mamy XXI wiek, użyj choćby esp32-c3 za 1.99$ który ma troche ramu i flash, i wygodne programowanie po usb/uart/wifi
  • Odpowiedz
  • 0
@hrumque: Po zastanowieniu się tak sobie myślę, że opcja przejścia na ESP32 S2 mini wydaje się badzo dobrym pomysłem, bo bardzo dużo pinów, mały rozmiar, cena całkiem okej. Odpowiednio zaprojektować PCB i myślę że będzie hulać.
  • Odpowiedz
@kuba802802 pod ESP nie ma sensu projektować płytki, w sensie pod czipa, porojektuj pod gotowy moduł jak wemos itp, wpinany na piny lub lutowany, ale całość gotowa na pcb, a nie goły ESP pod blaszany dekielkiem. Tak już w lutowany na olytke dostajesz czesto taniej, a z usb i uart, antenka wifi albo gniazdko zewnetrzne, z stabilizatorem ldo z 5v itd. i szybciej się wymienia
  • Odpowiedz
@kuba802802 nie wiem jak esp32, ale ESP zwykle wemosowe używam z deepsleep (trzeba zrobić pętelkę między D0 a reset, i nie używać D0 do niczego swojego) i działa to elegancko, pobor prądu (mimo uzywania normalnego wifi, a nie jakichś lora low power itd) taki, że bateryjka "jak od biosu" starcza na długo, miesiące...
  • Odpowiedz
  • 0
@hrumque: W sumie tak teraz doszło do mnie, bo chciałem robić na atmedze zarządzanie modułem over the air np. upgrade firmware czy kluczy kryptograficznych a tu na ESP mamy to już gotowe i ogarnięte lora kolejny plus przejścia, kwestia prostej logiki w kodzie mikrokontrolera stacja bazowa nadaje pakiet załączenia się wifi na modułach wgrywamy nowe firmware czy coś tam innego i po wifi aby nie było zbędnych zakłóceń wyłączamy moduły wifi
  • Odpowiedz