logo elektroda
logo elektroda
X
logo elektroda
REKLAMA
REKLAMA
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

Atmega8 kontroluje proces pakowania.

egienka 06 Sty 2012 19:47 4786 11
REKLAMA
  • Z powodu dużego zainteresowania chcę pokazać jak Atmega8 kontroluje proces pakowania towarów sypkich.Kontrola wagi towaru odbywa się za pomocą popularnej wagi z złączem RS AP-1. Dla dokładności dołożyłem przy 80% i 90% wagi dokładne dosypywanie, nie jest to uwzględnione w programie. Port c4 uruchamia sygnalizację dźwiękową.To jest adres do youtube o paczkarce-http://youtu.be/2SEBRLOAYpI.
    Program w Bascomie.
    Kod: text
    Zaloguj się, aby zobaczyć kod

    Ponieważ realizuję dużo projektów samodzielnie nie często jestem na elektrodzie.

    Fajne? Ranking DIY
    O autorze
    egienka
    Poziom 2  
    Offline 
    egienka napisał 3 postów. Mieszka w mieście Nowa Ruda. Jest z nami od 2005 roku.
  • REKLAMA
  • #2 10359422
    ezbig
    Poziom 20  
    Chciałbym zobaczyć ten filmik, ale link niepełny.
  • REKLAMA
  • #3 10359473
    Naimad_86
    Poziom 16  
    Link był ok, podaje zastępczy dla nierozgarniętych :)



  • REKLAMA
  • #4 10359626
    michal-michalik
    Poziom 23  
    Dobra dobra tylko czemu na filmiku nic nie „leci” ?? Moim zdaniem sporym problemem będzie tutaj opóźnienie od zamknięcia przesypywania, aż do momentu kiedy spadną resztki drobinek ;)

    Kurcze mam nadzieję, że mnie zrozumiecie... ;)
  • #5 10360039
    Naimad_86
    Poziom 16  
    No faktycznie, niby autor pisze:
    egienka napisał:
    dołożyłem przy 80% i 90% wagi dokładne dosypywanie

    Ale przydałby się film pokazujący działanie z materiałem sypkim a nie na sucho:D
  • #6 10361904
    ezbig
    Poziom 20  
    Skoro to ma coś pakować, to może to lepiej moment rozpoczęcia sypania ustalać na podstawie wagi opakowania. Zamiast czas między zasypaniem to lepiej ustalać wagę opakowania +/- tolerancja i ew. krótki czas na ustabilizowanie. Będzie to bardziej odporne na błędy. Nie nasypie na pustą wagę, nie będzie niepotrzebnego przestoju. Taki czas miedzy zasypaniami mógłby być ustawiany, ale dla sygnalizacji zbyt wolnej pracy. Przykładowo ustawiasz 15s i jak w ciągu tego czasu na wadze nic się nie pojawi (w wadze opakowania) to dajesz sygnał ostrzegawczy.

    Naimad_86 napisał:
    Link był ok, podaje zastępczy dla nierozgarniętych :)

    Daruj sobie takie uwagi, bo ten link można wpisać poprawnie na 3 sposoby, a autor wymyślił własny. To tak jakby użył w treści kropek i przecinków w losowych miejscach, usunął kilka czasowników i stwierdził, że "rozgarnięty" i tak zrozumie o co miał na myśli :|. Nie jesteśmy na "onecie" żeby przemycać linki w postach.
  • #7 10362296
    ololukiXP
    Poziom 19  
    Patrzę na ten twój kod i się zastanawiam po jakim czasie procesor się zawiesza. Stosowanie komendy GOTO wywołującej skok do głównego programu w podprogramie może spowodować przepełnienie stosu. Procesor będzie odkładał na stos adres programu przy wywoływaniu podprogramu, ale już go ze stosu nie zdejmie, tylko będzie wykonywał dalszą część programu znajdującą się po etykiecie do której odwołuje się GOTO (GOTO Prel; w tym wypadku etykieta znajduje się poza podprogramem, co jest błędem). Staraj się w przyszłości pisać programy najlepiej bez użycia GOTO, używaj go tylko w ostateczności.
  • #8 10362557
    Naimad_86
    Poziom 16  
    ezbig napisał:
    Daruj sobie takie uwagi, bo ten link można wpisać poprawnie na 3 sposoby, a autor wymyślił własny. To tak jakby użył w treści kropek i przecinków w losowych miejscach, usunął kilka czasowników i stwierdził, że "rozgarnięty" i tak zrozumie o co miał na myśli :|. Nie jesteśmy na "onecie" żeby przemycać linki w postach.

    Właśnie, to nie "onet" i posługiwanie się komputerem na poziomie kopiuj/wklej link powinny być zrozumiałe. Chciałem uprościć sprawę aby nie było więcej śmieci typu "zły link/ nie działa film". Tak więc Twoje "3 grosze" nie były na miejscu.
  • REKLAMA
  • #9 10362872
    SylwekK
    Poziom 32  
    Co do GOTO uwaga jak najbardziej słuszna - najlepiej nie używać. Program niby spełnia swoje zadanie ale jest napisany jakoś bardzo chaotycznie i mało czytelnie. Używaj wcięć w pętlach i warunkach, bo łatwo można później zabłądzić we własnym programie. Upraszczaj od razu to co można, bo kiedyś to się na tobie zemści, np:

    Kod: text
    Zaloguj się, aby zobaczyć kod


    czytelniejsze jest jako

    Kod: text
    Zaloguj się, aby zobaczyć kod


    Na koniec najważniejsza uwaga. Używanie Wait tam gdzie jest pomiar czasu to całkowita porażka. Wystarczy, że zapragniesz coś dodać w przerwaniach i możesz się pożegnać z i tak kiepską dokładnością Wait.
  • #10 10365314
    ezbig
    Poziom 20  
    Myślę, że kol. egienka wrzuciłeś nam tu w pospiechu jakąś przejściową wersję - GOTO perl w podprogramie "czas" nie zadziała nigdy, bo wywołanie podprogramu "czas" zostało wykomentowane. W sumie dobrze :) (bo to był błąd jak zauważył ololukiXP), ale co w takim razie tu analizować? Wrzuć poprawiony kod bo jak chciałeś się pochwalić (a tak zrozumiałem), wypadałoby to oczyścić ze śmieci.

    Naimad_86 napisał:
    Właśnie, to nie "onet" i posługiwanie się komputerem na poziomie kopiuj/wklej link powinny być zrozumiałe. Chciałem uprościć sprawę aby nie było więcej śmieci typu "zły link/ nie działa film". Tak więc Twoje "3 grosze" nie były na miejscu.

    Kurcze jak ja lubię taką bezinteresowną złośliwość. Uprościłeś sprawę to po co ten zbędny komentarz i brniesz w to dalej? Sprawdzałem kilka razy tego dnia i link nie działał (brak filmu w serwisie). Nie wiem, o której egienka umieścił film, ale jak zaglądałem to go tam nie było. Pewnie umieścił link, a trwała jeszcze weryfikacja. Nie mam w zwyczaju zwracać uwagi bez potrzeby.
  • #11 10465883
    egienka
    Poziom 2  
    ezbig napisał:
    Skoro to ma coś pakować, to może to lepiej moment rozpoczęcia sypania ustalać na podstawie wagi opakowania. Zamiast czas między zasypaniem to lepiej ustalać wagę opakowania +/- tolerancja i ew. krótki czas na ustabilizowanie. Będzie to bardziej odporne na błędy. Nie nasypie na pustą wagę, nie będzie niepotrzebnego przestoju. Taki czas miedzy zasypaniami mógłby być ustawiany, ale dla sygnalizacji zbyt wolnej pracy. Przykładowo ustawiasz 15s i jak w ciągu tego czasu na wadze nic się nie pojawi (w wadze opakowania) to dajesz sygnał ostrzegawczy.

    Naimad_86 napisał:
    Link był ok, podaje zastępczy dla nierozgarniętych :)

    Daruj sobie takie uwagi, bo ten link można wpisać poprawnie na 3 sposoby, a autor wymyślił własny. To tak jakby użył w treści kropek i przecinków w losowych miejscach, usunął kilka czasowników i stwierdził, że "rozgarnięty" i tak zrozumie o co miał na myśli :|. Nie jesteśmy na "onecie" żeby przemycać linki w postach.



    Bardzo dobra uwaga. Dziękuję.
REKLAMA