<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="pl-pl">
<link rel="self" type="application/atom+xml" href="https://forum.atnel.pl/feed.php?f=12&amp;t=20578&amp;mode" />

<title>ATNEL tech-forum</title>
<link href="https://forum.atnel.pl/index.php" />
<updated>2018-04-12T09:39:09+01:00</updated>

<author><name><![CDATA[ATNEL tech-forum]]></name></author>
<id>https://forum.atnel.pl/feed.php?f=12&amp;t=20578&amp;mode</id>
<entry>
<author><name><![CDATA[piotrek_violin]]></name></author>
<updated>2018-04-12T09:39:09+01:00</updated>
<published>2018-04-12T09:39:09+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=20578&amp;p=206733#p206733</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=20578&amp;p=206733#p206733"/>
<title type="html"><![CDATA[Re: Nawijarka Cewek]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=20578&amp;p=206733#p206733"><![CDATA[
Sylwku kilka obrotow na sekunde juz jest dla mnie wystarczajace. Dzieki grzeniu 73 za poswiecony czas, juz mi sie troche wyjasnilo w glowie jak to zrobic, tymczasem projekt nawijarki na ATmega poszedl w las, na szybkosci zlozylem nawijarke oparta o sterownik cnc, oraz sterowana z Macha, i po nawinieciu pierwszych kilku cewek stwierdzam ze w zupelnosci mi wystarcza  <img src="https://forum.atnel.pl/images/smilies/icon_e_smile.gif" alt=":)" title="Szczęśliwy" /><p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=19301">piotrek_violin</a> — 12 kwi 2018, o 09:39</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[grzeniu 73]]></name></author>
<updated>2018-04-10T22:27:18+01:00</updated>
<published>2018-04-10T22:27:18+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=20578&amp;p=206710#p206710</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=20578&amp;p=206710#p206710"/>
<title type="html"><![CDATA[Re: Nawijarka Cewek]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=20578&amp;p=206710#p206710"><![CDATA[
[syntax=basic4gl]$hwstack = 250<br />   $swstack = 250<br />   $framesize = 250<br /><br /><br /><br />$regfile = &quot;m328pdef.dat&quot;<br /><br />$crystal = 1000000<br />$baud = 38400<br /><br /><br /><br /><br /><br /><br /><br />Config Portb = &amp;B11111111 : Portb = &amp;B11111110         <br />Config Portc = &amp;B11111111 : Portc = &amp;B11111111             <br />Config Portd = &amp;B10111111 : Portd = &amp;B11111111              <br /><br /><br /><br /><br />   Config Lcdpin = Pin , Rs = Portb.7 , E = Portb.6 , Db4 = Portb.5 , Db5 = Portb.4 , Db6 = Portb.3 , Db7 = Portb.2       <br />   Config Lcd = 16 * 2<br /><br />   Cls<br />   Cursor Off Noblink<br /><br /><br /><br /><br />     Config Timer0 = Timer , Prescale = 1<br />     Enable Timer0 : On Timer0 Prztimer2<br /><br /><br />'==================================================================<br />  Dim Flaga_5ms As Bit , Flaga_500ms As Bit , Flaga_1ms As Bit , Flaga_1s As Bit       'flagi przerwan<br />  Dim Dzielnik(3) As Byte<br /><br />'==================================================================<br />                        Enable Interrupts<br /><br /><br />     Do<br /><br /><br />  '-----------------------------------------------------------------------<br />  If Flaga_5ms = 1 Then                                     'Co 5ms<br />    Flaga_5ms = 0<br /><br />    ' tu robisz co ma być co 5ms<br /><br />       End If<br />   '***********************************************          co 500ms<br />  If Flaga_500ms = 1 Then<br />    Flaga_500ms = 0<br /><br />     'tu co 500ms<br /><br />     End If<br />      '****************************************              co 1 sekunde<br />      If Flaga_1s = 1 Then<br />        Flaga_1s = 0<br /><br /><br /><br />            End If<br /><br />   Loop<br /><br />    End<br /><br />      ' ===========================================================================<br /><br /><br /><br /> Prztimer2:                                                 '******************    przetimer 2<br /><br />  Timer0 = 6<br />  Set Flaga_1ms<br />   Incr Dzielnik(1)<br />    If Dzielnik(1) = 20 Then<br />     Dzielnik(1) = 0<br /><br />   Set Flaga_5ms<br />   Incr Dzielnik(2)<br />    If Dzielnik(2) = 100 Then<br />     Dzielnik(2) = 0<br /><br /><br />     Set Flaga_500ms<br />        Incr Dzielnik(3)<br />         If Dzielnik(3) = 2 Then<br />          Dzielnik(3) = 0<br />        Set Flaga_1s<br />   End If<br />    End If<br />     End If<br />  Return[/syntax]<br /><br /><br />Tu masz taka bazę. Jak się nie pomyliłem w obliczeniach to jest prawidłowy przelicznik przerwania. Reszta to tylko dodanie kilku zmiennych. W razie co pytaj<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1519">grzeniu 73</a> — 10 kwi 2018, o 22:27</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[SylwekK]]></name></author>
<updated>2018-04-10T10:52:12+01:00</updated>
<published>2018-04-10T10:52:12+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=20578&amp;p=206688#p206688</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=20578&amp;p=206688#p206688"/>
<title type="html"><![CDATA[Re: Nawijarka Cewek]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=20578&amp;p=206688#p206688"><![CDATA[
Aby uzyskać wysokie obroty często silnik zasilany jest napięciem rzędu kilkudziesięciu woltów aby szybciej odpowiedni prąd na uzwojeniach uzyskać. Twoim driverem raczej tak nie zrobisz... Co najwyżej kilka/kilkanaście obrotów na sekundę.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1922">SylwekK</a> — 10 kwi 2018, o 10:52</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[piotrek_violin]]></name></author>
<updated>2018-04-10T09:25:46+01:00</updated>
<published>2018-04-10T09:25:46+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=20578&amp;p=206686#p206686</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=20578&amp;p=206686#p206686"/>
<title type="html"><![CDATA[Re: Nawijarka Cewek]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=20578&amp;p=206686#p206686"><![CDATA[
Dzięki Sylwku za sugestię, faktycznie po poprawieniu programu silnik kręci się zdecydowanie szybciej przy obsłudze pełnego kroku program wygląda tak<br />[syntax=basic4gl]Sub Krok<br />A = 0<br />Do<br />Incr A<br />Set Portd.5<br />Set Portd.6<br />Waitus 700<br />Reset Portd.5<br />Set Portd.6<br />Waitus 700<br />If A = 200 Then<br />Incr Nawinieto<br />End If<br />If A = 200 Then<br />A = 0<br />End If<br />If Nawinieto = Il_zwojow Then<br />Call Nawijanie<br />End If<br />Loop<br />End Sub[/syntax]<br />Wygląda na to iż to jest maks, ponieważ przy czasie waitus 600 silnik gubi kroki, niepokoi mnie jednak to iż na wykonanie 1000 obrotów potrzeba czterech minut. Czytałem trochę o przerywaniach ale dalej to dla mnie czarna magia..<br />Ale chyba bez przerywań nie będę w stanie obracać dwoma silnikami na raz oraz wyświetlać postęp pracy na wyświetlaczu.<br />Moglibyście podsunąć jakieś sugestie odnośnie przerywań ? od czego zacząć ?<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=19301">piotrek_violin</a> — 10 kwi 2018, o 09:25</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[SylwekK]]></name></author>
<updated>2018-04-09T19:44:11+01:00</updated>
<published>2018-04-09T19:44:11+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=20578&amp;p=206665#p206665</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=20578&amp;p=206665#p206665"/>
<title type="html"><![CDATA[Re: Nawijarka Cewek]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=20578&amp;p=206665#p206665"><![CDATA[
&quot;LCD&quot; w bascom wykonuje się koszmarnie długo. Gdybyś ruch zrobił w przerwaniach i np. z timerem programowym to nie było by problemu z obracaniem.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1922">SylwekK</a> — 9 kwi 2018, o 19:44</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[piotrek_violin]]></name></author>
<updated>2018-04-09T15:38:36+01:00</updated>
<published>2018-04-09T15:38:36+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=20578&amp;p=206657#p206657</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=20578&amp;p=206657#p206657"/>
<title type="html"><![CDATA[Nawijarka Cewek]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=20578&amp;p=206657#p206657"><![CDATA[
Na wstępie nie będę ukrywał iż jestem początkującym w te klocki. Chcę zbudować nawijarkę do cewek sterowaną z ATmega16A. Do ATmegi podpinam dwa sterowniki EasyDriver A3967, podpięte mam również wyświetlacz oraz kilka przycisków do wprowadzania danych jak ilość zwojów itd. Menu wprowadzania danych mam już ogarnięte, problem natomiast pojawił się podczas prób sterowania silnikiem krokowym. Posiadam silniki Japan Servo 200 kroków na obrót, podpięte do sterownika zgodnie z instrukcją. Uruchomiając program wysyłający do sterownika sygnały step dir napotkałem problem<br />[syntax=basic4gl]Sub Krok<br />Do<br />Set Portd.5<br />Set Portd.6<br />Waitus 50<br />Reset Portd.5<br />Set Portd.6<br />Lcd &quot;krece&quot;<br />Locate 2 , 1<br />Loop<br />End Sub[/syntax]<br />Przy tak ustawionym waitus silnik obraca się bardzo powoli, próbowałem waitms początkowo ale było jeszcze gorzej. <br />ATmega taktowana jest wewnętrznym zegarem 1mhz.<br />Możecie mi podpowiedzieć w czym tkwi problem?<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=19301">piotrek_violin</a> — 9 kwi 2018, o 15:38</p><hr />
]]></content>
</entry>
</feed>