Tento příběh bude plný intrik, spiknutí, zklamání, slz a upřímné radosti. Nechal jsem se však trochu unést – tam se to nestane.

Pozadí: Mám starší matku, která žije v jiném městě. A své neduhy léčí aloe. Metoda funguje dobře – a neustále sází nové výhonky, které nahrazují ty utracené. Žije s ní 2 zástupci ocasaté fauny: Kuzya a Marek (kocour a kočka). Proč se z kočky najednou stal „Marek“ je dlouhý příběh. Stručně popišme důvod jako „protože hvězdy se tak zarovnaly“. To znamená, že předpokládejme, že Cat cat = nová kočka („Marek“);

Přál bych si, aby se jeho hosté chovali k rostoucí flóře s patřičným respektem. Například takto: Nicméně jdou nějak takto: V průběhu roku bylo vyzkoušeno spoustu přístupů, např.: poučování, kárání, zavírání dveří do pokoje. Nic nepomáhá. Výsledek je vždy stejný – jen se časem prodlužuje. Zvažovalo se dokonce i množství inženýrských přístupů. Nejsou však vhodné z nějakého důvodu: vysoká cena a složitost. Nebo zakrytí flóry před slunečními paprsky. V důsledku toho rada, zastoupená: já, já a já, rozhodla: „a zavolejte sem nejlepšího inženýra našeho království (já) LOL! Ať něco „takového“ sbírá! A dílo začalo vřít. Protože se mi povalovala malá nano deska Arduino, která zbyla z předchozích projektů, bylo rozhodnuto ji na ni sestavit. Stručně řečeno, jádro naší vesmírné technologie bylo následující (zleva doprava):

  • arduino nano;
  • infračervené pohybové senzory (mimochodem dobrá věc – úhel pohledu až 100 stupňů, dosah 2-3 metrů);
  • tranzistor mosfet.

No, zbytek je již jasný – takže to je vše. Pojďme každý svou cestou.

Dobře, dobře – jen vtip. Pokračujme.

Pro ty, kteří nevědí (což je velmi nepravděpodobné, na Habré, ale přesto) vysvětlím:

  • Arduino nano umožňuje naprogramovat určitou sekvenci akcí,
  • pohybová čidla – sledujte pohyb tepelných objektů,
  • Mosfet tranzistor je v podstatě relé, které slouží k zapnutí výkonné zátěže po přijetí slabého signálu z procesoru.

Ale mosfet je lepší než relé, protože ke svému provozu nespotřebovává téměř žádnou energii a kontakty se z neustálého provozu „nenýtují“. Díky tomu je odolný.

ČTĚTE VÍCE
Jakou barvu bude mít štěně špice?

Ale elektronika bez krytu není nic. Pouzdro vymodelujeme ve 3D a vytiskneme:

Montáž začneme úplně zdola: protáhneme telefonní dráty (ano, ano, vzal jsem přesně je – protože jsou levné a dlouhé) do pouzdra a připevníme je šrouby (předtím byly pod nimi položeny kanály, ve kterých Závit m3x0,5 byl poté ručně řezán závitníkem):

Mimochodem, tady bych měl říci pár slov o mosfetu: přestože se prakticky nezahřívá (to je jedna z jeho výhod), našrouboval jsem ho z hříchu na chladič. “Nech to být.”

Připojte mosfet ke zdroji napájení. Snažíme se připojovat opatrně, pomocí tepelného smršťování – jinak vám kočky vynadají ^_^

Dále instalujeme mosfet s chladičem a pohybovými senzory na místa pro ně určená.

. nainstalujte „mosch“ – tedy Arduino nano:

Nainstalujte zpět kryt. A teď NIKDO neví, jak to funguje (LOL):

Načítáme program a energicky máváme rukama před senzory. Dívej se! Oni pracují!

Hlavní bod přichází: k čemu to všechno je: vytváříme pro kočku zónu bez přístupu. Konkrétně podle wiki:

„Jedním z nejoblíbenějších pojmů v hodnotících kritériích je koncept anti-access/area-denial, zkráceně A2/AD, který označuje oblast, kde ozbrojené síly nemohou plně operovat kvůli skutečnosti, že jejich jednotky jsou v pozice zranitelná vůči prostředkům ničení armády.”

Jako takový prostředek k vytvoření zóny zákazu vstupu pro náš destrukční systém třídy „okenní parapet-kočka“ poslouží rozstřikování vody pomocí štěrbinových trysek. To znamená: vezmeme trysky pro ostřikovače čelního skla VAZ a uděláme toto:

Dále vezmeme nerezovou kapiláru s průtokovou plochou 0,3 mm – to je důležité! (ve skutečnosti to není nikdy důležité (LOL, to jsem já – aby to vypadalo důležitě) – protože to hraje roli jen tyče, která se zapíchne do květináče a na ni připevníme celý systém. Svého času jsem vzal tohle trubka – za „hodně peněz“ – za vysokotlaký přístroj (v tomto podniku jsem sestavil batohový vysokotlaký benzinový vzduchový kompresor (500 bar) – ale z mnoha důvodů myšlenka „zamrzla“) . Proto „shořela stodola – dům také.“ „: setřeme slzu lakomého muže a dáme telefon do práce:

ČTĚTE VÍCE
Jsou američtí buldoci chytří?

Jako nádrž na vodu byla vzata nádrž z „kopek“ (VAZ 2101).

P.S. Nohy jsou moje. Skvělé – že? LOL.

A takhle to vypadá za denního světla:

Dále se tento systém zasekne do země pod aloe a „monitoruje okolí“. Jakási „protikočičí protivzdušná obrana“.

Jednoho z těchto dnů systém přejde k „vděčnému publiku“. Doufám, že to ocení.

Nemohu to zatím předvést v práci, protože. Po ruce nejsou žádné kočky.

Ale budu to sledovat a dám vám vědět „kdy a co“.

Nyní několik poznámek:

  1. Pokud stavíte něco podobného, ​​musíte mosfet brát „s logickou úrovní“ – tedy tak, aby se otevřel od 3-5 voltů;
  2. Jak se ukázalo, senzory kategoricky nepřijímají světlé odstíny plastu (prostě neustále zůstávají ve stavu „zapnuto“). Musel jsem přetisknout spodní část pouzdra – černý ABS – plast. Všechno s tím funguje dobře:

A teď je nejdůležitější, že pokud to někdo potřebuje, sdílím soubory.

Skica pro Arduino IDE:

int sensor1 = 2 ;// пин инфракрасного сенсора 1 int sensor2 = 3; // пин инфракрасного сенсора 2 int mosfet = 10; // пин силового мосфета, который включает насос boolean isSensorStarted = false; // сработал ли хоть какой то датчик boolean isMotorStarted = false; // запущен ли в данный момент двигатель boolean catStatusMessage = false; // вывод сообщения о текущем статусе кота boolean isFirstMessage = true; // вывод первого сообщения boolean firstStart = true; //пауза только при первом старте системы (даёт возможность загрузиться) volatile uint32_t startTime = 0; //время в миллисекундах, когда стартовал двигатель volatile uint32_t workingTime = 3000; //время в миллисекундах, которое будет работать двигатель void setup () < Serial.begin(9600); pinMode (sensor1, INPUT) ; // пин датчика работает как вход pinMode (sensor2, INPUT) ; // пин датчика работает как вход pinMode (mosfet, OUTPUT) ;// пин мосфета работает как выход attachInterrupt(digitalPinToInterrupt (sensor1), sensor_impulse, HIGH); attachInterrupt(digitalPinToInterrupt (sensor2), sensor_impulse, HIGH); >void loop () < while (isSensorStarted) < if (firstStart) //пауза при первом старте системы, после включения питания - даёт системе загрузиться и датчикам-прийти в состояние LOW < detachInterrupt(sensor1); detachInterrupt(sensor2); while ( (digitalRead(sensor1)==HIGH) || (digitalRead(sensor2)==HIGH) ) < //ничего не делаем-ждем, пока не появится сигнал LOW >firstStart = false; isSensorStarted = false; Serial.println ("Стартуем"); isFirstMessage = false; attachInterrupt(digitalPinToInterrupt (sensor1), sensor_impulse, HIGH); attachInterrupt(digitalPinToInterrupt (sensor2), sensor_impulse, HIGH); break; > if (catStatusMessage) < Serial.println ("Агонь па кату. :-)"); catStatusMessage = false; >detachInterrupt(sensor1); detachInterrupt(sensor2); digitalWrite(mosfet, HIGH); startTime = millis(); //записали время старта двигателя isMotorStarted = true; Serial.println ("Двигатель запущен!"); while (isSensorStarted) < if (isMotorStarted) < if (millis()-startTime >= workingTime) < isMotorStarted=false; digitalWrite(mosfet, LOW); Serial.println ("Двигатель остановлен!"); >> if ( (digitalRead(sensor1)==LOW) && (digitalRead(sensor2)==LOW) ) < attachInterrupt(digitalPinToInterrupt (sensor1), sensor_impulse, HIGH); attachInterrupt(digitalPinToInterrupt (sensor2), sensor_impulse, HIGH); isSensorStarted = false; >> > if (!isFirstMessage) < if (!catStatusMessage) < Serial.println ("Кота что то нету. -("); catStatusMessage = true; >> > void sensor_impulse () < if (!isSensorStarted) < isSensorStarted = true; >>

Soubory pro 3D tisk si můžete stáhnout pomocí tohoto odkazu.

ČTĚTE VÍCE
Jaký je temperament černého labradora?

To je vše – zpráva je hotová.

  • Blog společnosti RUVDS.com
  • Vývoj pro Arduino
  • DIY nebo Udělej si sám