Hogyan készítsünk virágot szalvéták



Air és rendkívül kényes virág lehet, hogy saját kezébe egy ajándék, egy nagyon rendes anyagot - szalvéták. A termék kategóriájába tartozik az egyszerű, mert az minél még a legkisebbek, és ezért a nem kezüket annyira szokatlan és szép csokor, mint egy ajándék, hogy ő szeretett anya, nagymama és nővére. A szalvéta anyaga papír termékek szolgálhat szövetek, amelyek dobozba csomagolva, zsebkendő van egy könnyű, szellős, és alkalmas legyen.
A szalvéták termékek szüksége különböző színnel, olló, szalag, és szárak használható egyszerű ágak, amelyek megfelelő mennyiségben megtalálható a földön, nem oblamuyuchy fák és cserjék.
Hogyan készítsünk virágot szalvéták

Arról, hogy hogyan teszik virágot szalvéták itt
Ha egyszer, hogy elegendő számú színek alkothatnak egy csokor. Ksati szárak lehet használni a szára művirág, ha azok elavultak, és kell, hogy felfrissít.
Hogyan készítsünk virágot szalvéták

Hogyan készítsünk virágot szalvéták
Gyűjtjük és erők lévő panzió heksapoda

 Mellőzve rozkazni arról, hogyan jött az ötlet, hogy építsenek heksapoda (ez volt tonna videók a YouTube-on), közvetlenül a kiválasztási folyamat részleteit. Január volt a 2012-es. Csak azt tudom, hogy mit akarok a munkámat, és mi - nem. Szeretem:

 hogy minden láb volt, 3 szabadsági fokkal - 3dof (3 dimenzióban szabadság), mint egy egyszerűbb lehetőség 2dof - teszi ilyen érzés a rovarok és 4dof - egyszer, 3dof és így lehetővé teszi, hogy szabadon mozog a hegye a lábát a 3D-s térben;
 6 méter. Ismét, ez nem 4 (ha ügyetlen robot ugrik), de nem a 8. mivel a pókok, hogy túlzottan;
 kis méret;
 olcsó bekerülési;
 minimum táblák és kapcsolatok.

 1. lépés. Először is, természetesen, el kellett választani az alaplap a gyermek számára. Sok a jó és a rossz időt, hogy olvassa el, mire az Arduino. De neki, és nézte, ahogy a fő menüpontot. Forrasztási szabályozó maga - nem volt idő, és hogy a fejlettebb fedélzeti ARM CPU-val, például - ez drága, és megértsék, hogy a programok, hogyan kell dolgozni PWM eredmények, stb - hosszú. A arduyna: IDE indított, napedalyl kódot, feltöltés nyomni - és hello, akkor a villogását. Szépség! ;)
 Eleinte elkezdtem nézni Arduino mega és klónok, így a PWM kimenet segítségével vezérelhető szervo róla elegendő. Ne feledje, hogy 3dof heksapoda kell 3 * 6 = 18 jobbágy és alkatrész csatorna kezelése. De aztán találtam egy igazi Yazz körében Arduino mega, a felelős Dagu, hívja Red Back Spider Controller. Itt van az eBay-en.
 A szálloda valamennyi kimenet befejezettnek 3-pin (föld, élelmiszer, hang), majd az oldatot az élelmiszer. Power of Controller stabilizálódott, és a csatlakozó dvyhlov mint (UDP: nem így, hanem stabilizált 5 V. És úgy tűnik, megoldotta a Power kontroller való beavatkozásnak a vezérlő 18 egyidejű jobbágyok nem teszik). Ez lehetővé teszi, hogy a fájlt a terminál 7-30 volts élelmiszer elegendő áramot (eee pc kérdőívet 901-12V és 3A - elég volt mind a 18 szervo zümmögő), és nem csapja be külön hálózati és logikai dvyhlov. Is, akkor a jövőben is könnyen fel ezt a szörnyeteget pack Li-Po akkumulátor 7,4 V. És mindezt, programszerű szempontból - ez egy közös arduyinov mega-kompatibilis szoftver és lybamy és vas (kivéve shyldov, szerelve közvetlenül az eredeti mega - nem fog működni). Azonban az ár magasabb, mint akár az eredeti Mega, de az összes többi profik meghaladják azt.
 2. lépés. Next szervót. Az eBay-en micro szervó Kérdezze meg őket, egészen más. Vettem a legerősebb a legkisebb és legolcsóbb, 9 gramm tömegű, műanyag fogaskerék. Ha az előírtnál sok amennyiben azokat tételeit feladó - olcsóbb. Vettem 3 csomag 6 úgy tűnik, hogy történt kevesebb, mint 2 dollárból darab. Megmondom, hogy sajnálom, hogy nem töltött több és vegye szervo fém fogaskerekek és csapágyak. Ezek a műanyagok voltak elég észrevehető visszaüt, és a jellegzetes összeroppant, amikor túl nagy erőt kihagyja fogaskerekek. Mivel az visszaüt - kinematikáját elég nehéz beállítani pontosan (általában ez a legnehezebb kiderült).
 Ez minden, amit rendeltem, szállítás csinálta 100 dollárral. Az elemek és adó / vevő Monitoring és radyoupravlyaemosty - bal későbbre. Mivel rádióvezérlésű gépemen, és nem csoda, hogy mi igazán érdekelt engem - ez láb! Videók megy simán heksapodov a YouTube-on - néztem lenyűgözte őt, nézett, és minden alkalommal, könnyek peregtek az arcán, és én megfulladt zihálás "Azt akarom! ". Én nem kérheti a kész darabot, és azt akarom, hogy a legtöbb bármi!
 Várva a megrendelés szövege a művelt emberek animált alkotásait. Természetesen azonnal felszínre inverz kinematikai. Ha azt mondod, egyszerűen és közvetlenül mintegy sharnytnыe "végtagok", a közvetlen kinematika - ez az, ahol a bemeneti benyújtott sarkok ízületek, és a kimeneti van egy modell a végtag térben, a koordinátákat a szélső pontjait végtag. Inverz kinematikai van - nyilván ellentétes - a bemeneti kapott koordinátákat a szélső pontjait végtag hol kell elérni, és a kimeneti kapunk szögeket, hogy be kell kapcsolnia zsanérok elérni ezt. Servo csak kap a bemeneti szöghelyzetek amelyeket nekik kell vissza (egy jelvezeték kódolt PWM / PWM).
 3. lépés. Kezdtem, amely olvasni, gondolom végrehajtása révén IC. De hamarosan jött az az érzés, hogy én esetemben ez túlságosan bonyolult. És ahogy nehézkes végrehajtani, és számításigényes nagyon nehéz - a számítás iteratív. És van 6 lába, amelyek mindegyike kell tekinteni IC, és csak nem túl okos 16Mhts Architecture AVR. De csak 3 szabadsági fokkal. És könnyen kitalálható, hogy a tetszőleges helyen dotyahuvannya "elérheti csak egy módja. A döntés már érett a fejemben.
 De aztán jött február és csomagok - egy kínai, egy másik brit. Az első dolog, amit általában csak pohravsya Fizessen arduyinov - pomorhal popylykal LED és a csatlakoztatott hangsugárzó van. Ezután kezdődött a tényleges IC végrehajtása, a mirigyben. Amit épített egy prototípust méterre hulladék anyagok (meglehetősen enyhe plastmasska, hogy könnyen vágható ollóval, csavarok és mellékletek - az összes készletek működtető). Ez a terminátor lábát biztosított közvetlenül a fórumon arduynы. Akkor úgy, hogy a költségvetés készült ízületek.
Gyűjtjük és erők lévő panzió heksapoda

Gyűjtjük és erők lévő panzió heksapoda

 Pomyluvavsya ebben az esetben, és pomriyav, hogy ha én alapú ezt a munkát a jövőben spayayu terminátor, amely hadat üzen az emberiség, majd később John Connor Schwarzenegger visszatér ide a múltban, és válassza ki a prototípust és rasplavyat a Orodruyne. De senki sem jött vissza, semmi elvitték, és mentem tovább csendben.
 4. lépés. Megállapítást nyert, hogy IR nem kell félni, az én esetemben ez jött le, hogy triviális geometria, trigonometria. Könnyebben alkalmazható ízületi, fordult Wikipedia és megbecsült rovarok. Ők külön neve a végtag:
Gyűjtjük és erők lévő panzió heksapoda

 Orosz is megvan a maga nagyon érdekes neveket ezt, de a "tál", "vertluh", "leg", stb, míg a kód nem engedte aludni. Szóval én 3 végtagok és az érintett szervo szabadság nevet coxa, combcsont, sípcsont. Prototípus méter magasan azt mutatja, hogy nem is kell coxa különálló részből áll. Ez csak két szervo kötött elasztikus szalaggal. Combcsontot - végre egy műanyag csíkot, amely mindkét fél szerelt karok jobbágyok. Így, az utolsó megmaradt servodvyzhok - az elején a sípcsont, kiterjeszteni, amelyeknek ki van csavarozva egy darab műanyag.
 5. lépés. Elindította a szerkesztő, nem mudstvuya létrehozott fájlt Leg.h, és ez class Leg. És egy csomó kiegészítő Muti. Tegyük fel, hogy van egy pont a térben A (ax, ay, az), mely érje el. A felülnézeti így néz ki:
Gyűjtjük és erők lévő panzió heksapoda

 I. ábra rögtön mutatott számításának módját az első szög - a forgási szögének a szervo, ellenőrzés coxa, ami forgatja a teljes végtag vízszintes síkban. A diagram azonnal pirossal jelölt változók használt kód (nem mindegyik). Nem nagyon matematikailag, de kényelmes. Nyilvánvaló, hogy mi érdekli sarok elemi. Először primaryCoxaAngle - csak a szög (0; A) az X tengellyel (egyenértékű a sarokban polárkoordinátákban). De a diagram azt mutatja, hogy míg a láb maga - nem raspalozhena ezen a ponton. Ennek oka, hogy a forgástengely a coxa nem a "line up" - Nem tudom, hogy mondjam el helyesen. Nem a sík, amelyben a forgó közös és a másik jelentése 2 láb hegy, itt. Ez könnyen kompenzálható, tekintve additionalCoxaAngle (mivel úgy vélte - még utruzhdayus megállás, mert még mindig az iskolában, ugye?).
 Együttesen az első kódrészletet, ez a módszer belsejét REACH (Point & dest):

 lebegnek hDist = sqrt (sqr (dest.x - _cStart.x) + sqr (dest.y - _cStart.y));
 lebegnek additionalCoxaAngle = hDist == 0.0? DONT_MOVE
 : Asin (_cFemurOffset / hDist);
 lebegnek primaryCoxaAngle = polarAngle (dest.x - _cStart.x, dest.y - _cStart.y, _thirdQuarterFix);
 lebegnek cAngle = hDist == 0.0? DONT_MOVE
 : PrimaryCoxaAngle - additionalCoxaAngle - _cStartAngle;

 Itt dest - ez az a pont, ahol nazho drag, _cStart - koordinátáit hardver (és a forgatás középpontjába) coxa, a hDist úgy a távolság _cStart a Cél a vízszintes síkban. DONT_MOVE - ez csak egy zászlót, ami azt jelenti, hogy coxa nem kell hová fordulni, és hagyja a jelenlegi helyzetben (mint dest - valahol közvetlenül a forgástengely coxa - ritkán, de előfordul). Itt cAngle - ez egy sarokban, ahová a szervo fog eltérni az eredeti szög (ami a közepén a hatótávolságán). Látható, hogy amint yuzaetsya _cStartAngle - az a szög a térben, amely által visszaadott szervo devoltu, a telepítés során. Körülbelül _thirdQuarterFix később elmondom, ha nem felejtem el.
 6. lépés. Aztán a dolgok még könnyebb. Csak meg kell nézni a fent említett sík "sorakoznak":
Gyűjtjük és erők lévő panzió heksapoda

 Így a probléma hirtelen csökkenteni, hogy megtalálják a metszéspontja 2 körökben. Az egyik - a pont, ahol "növekvő" a combcsontot, a második - a lényeg, hogy hol kell elérni (2d helyi koordináták). A sugara a körök - a hossza a combcsont és a sípcsont, illetve. Ha a körök metszik egyik 2 pont lehet helyezni közös. Mindig válaszd a legfelső hogy "térd" a szörnyek hajlított fel, nem le. Ha nem fedik egymást - nem dotyanemsya a célpont. Egy kis kódot, váltson a gép egyszerűen csak egy pár buktatókat figyelembe veszik és dokumentálják a megjegyzéseket, hogy én nem értette, megvizsgálva a kódot. Az egyszerűség kedvéért ebben a lokális "sík up" Úgy döntöttem, a származási helyen, ahol egyre combcsont:
  // Költözés helyi coxa-combcsont-cél koordináta-rendszer
 // Megjegyzés az esetben, ha hDist<= _cfemuroffset.="" this="" is="" for="" the="" blind="">
 // Mi soha nem éri el azt a pontot, amely közelebb van a _cStart majd
 // Combcsont offset (_fStartFarOffset)
 lebegnek localDestX = hDist sqr (_fLength + _tLenght))
 {
 log ("nem tudja elérni!");
 return false;
}

 7. lépés. Most localDestX és localDestY - koordinátáit a célpont. Minden, ami marad -, hogy megtalálják a kereszteződés körök középpontú (00) és (localDestX, localDestY), és a sugarak _fLength és _tLength (illetve a hosszát és a combcsont hossza sípcsont). Ezzel a diák is sikertelen, de beismerem, sok hiba, hogy ellenőrizze a saját és mindenki megteheti, hogy ellenőrizze, milyen buta képletek, így egy hivatkozást, amely világos razzhovana ezt az elemi geometriai probléma:
  // Közösen keressenek a kör metszi (egyenletek a http://e-maxx.ru/algo/circles_intersection & http://e-maxx.ru/algo/circle_line_intersection)
 float A = -2 * localDestX;
 lebegnek B = -2 * localDestY;
 lebegnek C = sqr (localDestX) + sqr (localDestY) + sqr (_fLength) - sqr (_tLenght);
 float X0 = -A * C / (sqr (A) + sqr (B));
 float Y0 = -B * C / (sqr (A) + sqr (B));
 float D = sqrt (sqr (_fLength) - (sqr (C) / (sqr (A) + sqr (B))));
 float mult = sqrt (sqr (D) / (sqr (A) + sqr (B)));
 float ax, ay, BX, amelyet;
 ax = X0 + B * mult;
 bx = X0 - B * mult;
 ay = Y0 - A * mult;
 by = Y0 + A * mult;
 // Select megoldást a tetején, mint a közös
 lebegnek jointLocalX = (ax & gt; bx)? ax: bx;
 lebegnek jointLocalY = (ax & gt; bx)? Ay: a;


 Minden, még mindig egy kicsit a kapott koordináták kiszámításához megfelelő szögben a combcsont és a sípcsont jobbágyok:
  lebegnek primaryFemurAngle = polarAngle (jointLocalX, jointLocalY, false);
 lebegnek fAngle = primaryFemurAngle - _fStartAngle;
 lebegnek primaryTibiaAngle = polarAngle (localDestX - jointLocalX, localDestY - jointLocalY, false);
 lebegnek Gubanc = (primaryTibiaAngle - fAngle) - _tStartAngle;

 8. lépés. Ismét эlementarschyna - szögkoordináták minden. Remélem elnevezési változók már világos például, _fStartAngle - ez combcsontja kezdő szög, a szög, ahol a combcsont rendezője alapértelmezett. Az utolsó sorban pedig a módszer REACH () (azt mondta, elment, és integetett):
  mozog (cAngle, fAngle, kusza); 

 Módszer lépés közvetlen beírással szervo. Sőt, még akkor is kellett hozzá mindenféle dolgok védelem a rossz szögben (ami szervo nem tud visszatérni, de megpróbálunk), valamint az egyéb lábak, amelyek zarkalno és / vagy elküldeni a másik fél. De amíg mi a munka csak egyik mancsával.
 9. lépés. Ezek a darabok - ez lesz a végső kódot, ami messze nem tökéletes, és ez minden bizonnyal jelentősen javítható. De működik! Soha nem ment a középiskolai geometria, trigonometria, mi végre polnofunktsyonalnuyu ynversnuyu kinematika 3dof láb! Igen, és megkapjuk a megoldást rögtön, egy ismétlés. Annak érdekében, hogy minden munkát, lábát kellett alaposan mérlegelni kell, és konfigurálja class kapott adatokat. beleértve a szög, hogy a legnehezebb mérni a késztermékben. Talán ha egy projekt avtokad, és néhány szép teszi - hogy könnyebb lenne a mérése szögek, de nem volt ideje vagy vágy, hogy kezelni ezt az érzelmet.
 Február még csak most kezdődött, és a videók lábbal már megtörtént. A teszt az IC, tettem a láb leírni mindenféle adatokat az űrben (van, hogy következetesen kiváltó megközelíthető, elkerülve azt a pontot a téglalap vagy kör kódot unalmas és unalmas, ezért ne idézet (és kész kísérletek lehessen nyomozni primitívek, azt kell általános vypylyav)):

 10. lépés. Aztán be kellett fejeznem a játék ezzel a termékkel az egyik lábát, nem uprыhaesh (bár ez a robot lenne igazán érdekes). De szükségem heksapod. Elmentem megkeresni a legközelebbi bolhapiacon plexi. Talált 2 különböző darab - egy 3 mm vastag (csak a testet, gondoltam), a másik 2 mm és kék (más végtagra, hogy megfeleljen a szervo). Néhány hét múlva I vájt éjszaka vele valamit. Tette vázlatok papírra. próbáltam -, mintha minden rendben van, akkor a helyzet egy fémfűrész.
Gyűjtjük és erők lévő panzió heksapoda

Gyűjtjük és erők lévő panzió heksapoda

Gyűjtjük és erők lévő panzió heksapoda

Gyűjtjük és erők lévő panzió heksapoda

Gyűjtjük és erők lévő panzió heksapoda

Gyűjtjük és erők lévő panzió heksapoda

Gyűjtjük és erők lévő panzió heksapoda

Gyűjtjük és erők lévő panzió heksapoda

Gyűjtjük és erők lévő panzió heksapoda

Gyűjtjük és erők lévő panzió heksapoda

 11. lépés. És itt van, a tengerentúlon szörny shestylapoe. Amikor tesztelem az egyik lábát, volt ez a dolog valahogy maradt kérdőívek külső csavarokat. Elég. De etetni 6 lépésnyire tőle, hogy túl ijesztő. Szóval egy darabig, hogy letettem a kezét, azt gondolva, hogy el kell jutnom egy megfelelő kérdőíveket. De kiderült, sokkal könnyebb, azt említettük - jött a kérdőívet eee pc 901. Nos, rendben.
 12. lépés. Létrehozza a munka 6 láb nehezebbnek bizonyult, mint levelet az egyik lábát motort. Half lábai tükörképei a másik. Mindezek mellett, amelynek célja a különböző irányokba. Általában konfyhuryroval nalashtovuvav és én is nagyon hosszú, és nem volt nagyon inspiráló, így a pénzt nem volt kényelmes beállítását, maximum tudtam számíthat - a következtetésre LOSA Soros. És ez jól működött, az alapvető * .ino fájl, a csatlakoztatott Leg.h - Nem láttam a tételt. Órajele mankó a LOSA (facepalm). Végül otrefaktoryu. És itt van a tavasz beköszöntével velosezon-ben nyílt meg teljes erővel, és én adtam a kisállat esetén shestylapoho. Így telt el a nyár és az ősz hő.
 13. lépés. De az eső jött, mert hideg volt, és heksapod kivontuk. Lábai jöttek létre, beleértve az azonos vezették _thirdQuarterFix funkciót számítási polarAngle. A probléma az volt, hogy 2 láb (bal középső és hátsó bal) költözött, hogy az idő nagy részében volt III negyedévben:
Gyűjtjük és erők lévő panzió heksapoda

 A polarAngle naiv voltam - kiderült sarkából pi-pi hogy az X tengely És ha néha egy ilyen 2 méter volt, hogy visszatérjen a II-nd negyedévében, az érték polarAngle ugrott Pi Pi hogy valóban negatív hatással volt a további számítás. Pofyksyl mankó - e 2 méter polarAngle tekinthető "más". Szégyen, szégyen rám a kódot, de a teljes projekt - a proof of concept, egyetlen célja az, amely - nem csak megérteni, tudok gyűjteni reális heksapoda mozog-e vagy sem. Ezért a kódot kell dolgozni, és most. És akkor refactor - pererefaktorynh.
 Megbirkózni a 3. negyedévben kezdte a pedál lépést mintákat. Ebben az osztályban bevezetett pont Leg alapértelmezett, vagyis ahol a láb, ahol a munka csendesen és simán. Ez a pont tyuninhuvaty, fontos, hogy az összes lábát az azonos koordináta z (lábakkal, hogy fizikailag voltak ugyanazon a síkon, a Leg továbbra is nagyon alacsony szinten tuneRestAngles ()). És ugyanabban a koordináta-Z, akkor mozogni önkényesen. Majdnem - mert a különböző mozgás nem végtelen, az viszont nem túl ezt dyapazoda - alaphelyzetben a lábát megpróbálta elhelyezni valahol a közepén ebben a tartományban.
 14. lépés. A kód nem a szövegben az idézet, hogy túl egyszerű és beviszem a végén egy linket a teljes verzió minden sortsa - ugyanakkor megtanulják használni GitHub.
 Sequence úgy döntött, egy egyszerű lépéssel - 3 lábbal a földön, 3 - a levegőben átrendeződik. Így a koordinátáit láb alapértelmezett helyzetben - lehet 2 csoportra osztottuk. E két csoport I. és provertav lépést a ciklusban (lásd a szolgáltatás séta () in Buggy.ino). És a végén, mindkét lábat számítani a összehangolják az egyes alapján az alapértelmezett helyre.
 És ez ment! De eddig előre. A lábán viselt gumiszalag, hogy rosszul csúszott a linóleum. Rohantam, hogy lőni is a videót, hogy mutassa a barátok.

 15. lépés. A kandalló-és, persze, messze.

 
 
 
 
 
 
 
 
   




Яндекс.Метрика