Giter VIP home page Giter VIP logo

tfpm01's Introduction

TFPM01 - The first generation of TF-ATMON Particulate matter sensor

Particulate matter sensor for TF-ATMON system is based on Sensirion SPS30, TFGPS01 and TFUNIPAYLOAD.

Look to the following video for a demonstration flight of a sensor mounted on TF-G2 autogyro.

Watch the video

The design of TFPM01 is obsolete because the particulate matter sensor is now read out directly by PX4 firmware and therefore is replaced by TFPM02.

The Connection diagram between SPS30 and TFUNIPAYLOAD

The sensor is connected to the TFUNIPAYLOAD by using SZH-200BK26 wires and ZHR-5. For testing and development of TFUNIPAYLOAD firmware, the ATmegaTQ4401A module was used as shown in the diagram. The ATmega runs the Arduino firmware, which prepares MAVLink messages ready to log and transport to TF-ATMON-enabled GCS.

The block schematics of design are equivalent to the following photo

Connection between SPS30 sensor, TFGPS and TFUNIPAYLOAD

Do not refer to the photo exactly for pinout. Instead, use the following table

SPS30 Pin Signal MCU Color
1 VDD +5V - Supply voltage Vcc Red
2 SDA D17 / SDA + resistor 10k to Vcc Black
3 SCL D16 / SCL + resistor 10k to Vcc Black
4 Interface select Floating - UART, GND I2C. GND Black
5 (outer edge) GND GND Black

GPS PPS signal is connected to pin 12 (PD4), this could be changed in source code.

tfpm01's People

Contributors

kaklik avatar oploc avatar roman-dvorak avatar

Stargazers

 avatar

Watchers

 avatar  avatar  avatar  avatar

tfpm01's Issues

Aktivovat funkci samočištění snímače

U snímače je nyní vypnutá funkce čištění. V datasheetu ji doporučují zapínat přibližně jednou týdně.

Protože je nepratické aby se snímač čistil v náhodných časech. Tak se funkce čištění musí zapínat v nějakých definovaných podmínkách.

Napadají mě tyto možnosti:

  • aktivace čištění při zapnutí. (Což znamená, že se může snímač snadno naopak zanést, například když se čištění zapne v prachu na zemi)
  • aktivace čištění naarmováním (tady lze předpokládat, že vírník již bude v nějakém definovaném umístění. Nevýhoda je, že chvíli nelze čidlo používat)
  • Aktivace čištění podle "motohodin" kontrolovaných třeba pozemní stanicí, nebo autopilotem.

Každopádně to ale asi znamená, že payload musí alespoň minimálně rozumnět zprávám z autopilota, aby poznal, kdy má dojít k vyčištění snímače.

Změřit impulzní odevu snímače

K tomu, aby @povik vůbec mohl vytvořit algoritmus pro dekonvoluci dat https://github.com/ThunderFly-aerospace/TFVIZ/issues/18 a tím bylo umožněno vykreslování relevantní 3D mapy je potřeba znovu změřit impulzní odezvu.
Důvodem je že od v současnosti změřeného grafu impulzní odezvy nemáme data.

image

Teoreticky by možná šlo za změřenou impulzní odezvu považovat aktuálně změřená data z minulého letu. Je tam ale možná problém, že není známá ustálená a tedy skutečná vrcholová koncentrace částic.

Vyřešit tento zádrhel by mohl experiment, kdy se snímač dá z čistého vzduchu do zakouřené krabice. Zde se nechá až do ustálení hodnot a následně se vyjme na čistý vzduch.
Tento cyklus by asi bylo vhodné několikrát opakovat.

@ChroustJan Nemáme prosím někde už druhý snímač, aby šlo tenhle celý proces provádět paralelně na více místech?

Heartbeat posílat nezávisle na GPS PPS signálu

Aktuálně se Heartbeat paket posílá pouze v případě, že je přítomný PPS signál. V případě, že senzor z nějakého důvodu nefunguje, tak tohle by byla věc, která by se ověřovala jako první. Jestli je problém ve spojení mezi MCU a FMU nebo jestli je problém se čtením ze senzoru.

Heartbeat paket nemusí být vůbec synchronní k PPS signálu.

Firmware pro čtení dat ze snímače SPS30

K měření pevných částic v atmosféře pomocí UAV Vírníku je potřeba k autopilotu připojit snímač prachových částic.
Zvolený snímač by sice pravděpodobně bylo možné připojit k autopilotovi přímo na jeho UART či I²C konektor. Není to však jednoduché řešení, neboť potřebuje úpravu firmware autopilota a vytvoření ovladače pro tento konkrétní senzor.

Alternativní řešení, je připojení snímače k Arduinu a to následně připojit na Telemetry port autopilota. S tímto postupem počítá referenční konstrukce TFUNIPAYLOAD, která demonstruje spojení na posílání pole 'uint8_t' hodnot.

Pro připojení snímače je proto potřeba pro arduino připravit firmware, který bude číst data ze snímače SPS30 a bude je poskytovat ve formě vhodných MAVlink packetů autopilotovi.

Firmware může zřejmě vycházet z existující Arduino knihovny a příkladu, který je obsahem tohoto repozitáře.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.