Jump to content

InSides

Član
  • Broj sadržaja

    962
  • Na DiyAudio.rs od

  • Poslednja poseta

  • Broj dana (pobeda)

    21

Postovi objavljeno od InSides

  1. 3 minutes ago, NIXIE said:

    Znaš šta mene jedino brine u tvom projektu gramofona, ako vidi slučajno Kuzma šta si sve napravio, ima trenutno da padne u depresiju.:D

    Хах. :) Кузма брине о фирми, исплатљивости и профиту. Ја нисам (на срећу / нажалост зависно од гледишта) подложан тим ограничењима.

  2. image.thumb.png.c837e45618586ce6d387dc3b9dacad55.png

    Задња (али стварно задња) компонента грамофонског система - кућиште за Hall Effect сензор. У задњој идерацији, користим Honeywell-ов SS460S у TO-92 изведби.

    Сензор је монтиран на плочицу од POM-а, offset-иран од центра како би могао да имам флексибилност у монтирању (да не морам да будем ултра прецизан при постављању магнета, рецимо).

    Сензор је повезан са контролером уз помоћ кабла Tasker C286, и двојац TinyXLR конектора од REAN-а (подружница Neutrik-а).

  3. 32 minutes ago, tubelover said:

    a da poručim preko branka koji mi je dugogodišnji prijatelj?

    inače Milan ima odlične poslovne veze sa pijanicom ali nemam kuzmu jer mi preskup za to što dobijem i tako!

    Ко је пијаница? Чисто да се укључим у причу?

  4. 2 hours ago, Srecko said:

    Nisam pomenuo prezime namerno (profesionalna deformacija) emoji3.png.
    Da on je u pitanju!

    Nema zasto - Mikrosam je jedna od onih stvari koje su se desile u post-SFRJ Makedoniji na koju mozemo biti stvarno ponosni.

    Zacdnji njihov robot se trenutno koristi u VAG (Audi cini mi se) za proizvodnju kompozitnih rezervoara za gorivo.

  5. 5 hours ago, Srecko said:

    Možete li zamisliti iznenađenje kada sam video da ju je projektovala i napravila jedna privatna firma iz Prilepa koju su oformili inženjeri koji su otišli iz bivšeg “11. Oktomvri” i sto je najcrnje koje lično jako dobro poznajem.

    Samakoski je zaheban tip. :)

  6. Проблем #3

    Мало сам читао спецификацију Ардуина, и схватио да ЕЕПРОМ има лимит снимања (writing cycles). Загарантован број циклуса је око 100,000 - што изгледа пуно - али имајући у виду како Ардуино снима податке у ЕЕПРОМ, и није баш.

    Када се на то дода податак да је код снимао у ЕЕПРОМ сваке секунде, добијемо ситуацију у коју ЕЕПРОМ је практично неупотребљив за мање од 30 сати писања.

    Решење

    Сва логика писања у ЕЕПРОМ се налази у процедури:

    void checkTimer()

    Пар корекција ради оптимизације, и сада имамо чак и прецизнији тајмер, који штеди ЕЕПРОМ.

    Код је, као и увек (73432a0), овде:

    https://github.com/stojnev/dwr-controller

  7. 8 minutes ago, Woland said:

    mis'iš da će i zvuk da bude masivniji :)

    Зависи од штрафова за спајање плоче. :)

    Шала на страну - када бих имао времена - хтео бих да тестирам евентуалне разлике од овако монтираних SUT-ова до SUT-ова монтираних на, рецимо, дашчици.

    Штета што ми SUT више не треба. :P

  8. 1 hour ago, NIXIE said:

    A kako stoje stvari, jel imaš mogućnosti da kupiš tu lokalno dva torusa od po 30VA?

    Набавка реално није проблем. Локално имам и принт трафое - нису баш Талема, али су прилично добри. Ако набављам са стране, набавио бих и плочице и трафое.

    Искрено, надао сам се да постоји неки кит, али ако нема, набавио бих компоненте индивидуално.

    Сигма 11 је једна опција, али то нема трафо на плочици, па рекох можда постоји нека плочица која има:

    https://www.amb.org/audio/sigma11/

  9. 27 minutes ago, NIXIE said:

    To može na veroboard-u da se sastavi, LM317, 78S15 i slično sa dobrim hladnjakom i trafoom 30VA (ja bih uzeo torusni, recimo 15VAC 2A). Bitno je da kupiš stabilizatore koji nisu Kineske kopije, to je najbitnije, jer Kineski nemaju nazivnu struju kao originali. Ako time pogoniš motor, na izlaz staviš jednu diodu jaču (3A) kontra polarisanu a može i neki RC član paralelno sa +-.

    Јасно ми је, али хтео сам готову плочицу зато што знам себе... вероборд би ме гањао да стално нешто мењам.

    13 minutes ago, vladd said:

    Trebao bi trafo bar 20VA, jos lepse malo jace, i to vec ispada iz neke kompaktnosti.

    Plocica od pmillett-a je fina, uzmi recimo samo nju, jace diode, mozda sitne korekcije za single output, a trafo posebno, ima takvih snaznijih, lakse i bezbolnije je napraviti adapter plocicu ili nosac trafoa, nego budziti ceo ispravljac.

     

    Кад кажем компактно - не мора то бити минијатурно. Али ако је и трафо на плочици (као код Милет-а) онда се то лакше да скутијати, а да фино изгледа.

  10. Да би могао затворити пројекат грамофона, треба ми одговарајуће напајање. То напајање треба да погони (1) контролер мотора који користи 15VDC и (2) Arduino Nano које може такође користити 15VDC.

    У моменту, користим неки јефтини свичер (15VDC/1A), који ради посао без проблема, али морам преправљати конектори и тако даље, па бих урадио прописно напајање.

    Е сада, хтео бих да то буде што компактније - идеално би било набавити плочицу која има на себи простор за трафо, нешто овако:

    LRPS_PCBA.jpg

    Millett продаје плочицу, али је то напајање прилично слабо за моје потребе.

    Идеје? :)

  11. 8 hours ago, InSides said:

    Нисам ни баш матори, мало мање Јапанац, али ето...

    Добро бре људи, коју су ово је**ну магију Данци спаковали у овај SPU? И зашто ме нисте раније натерали да ово узмем?

  12. Проблем #2

    Раније сам писао да сам имао проблеме са имплементацијом CD4066B:

    On 3/23/2018 at 2:16 PM, InSides said:

    Па онда би да ревидирам употребу CD4066B зато што не понаша се баш како пише у datasheet-у. :)

    Моја имплементација је радила, али мање него идеално. Нипошто за решење на дуже стазе.

    Решење

    Након дискусије, и предлогa који је @guja011 дао:

    On 3/23/2018 at 6:08 PM, guja011 said:

    mada opet nije jasno kad već tastuješ samo ka masi, što nisi turio obične diskretne fetiće?

    Заменио сам CD4066B за четири BC337 транзистора, у комплету са 1кО отпорницима на сваку од транзисторских база:

    bc337_switch.jpg.bca2cace864a4d26e207f0fdcdf89d35.jpg

    Нема цурења, нема проблематичних понашања, ради како је оригинално замишљено.

    Редизајнирао плочицу, нови сет Гербера и breadboard слике на GitHub-у.

    Код је, као и увек (3d63b2a), овде:

    https://github.com/stojnev/dwr-controller

  13. Унапређење #4

    Рутине за чување укупног времена свирања.

    Позадина

    Како већ погон користи флексибилну (читај програмабилну) контролу, једна од задњих опција које сам хтео имплементирати је снимање укупног времена свирања. Ово је, бар за мене, прилично корисна функција за праћење старости звучнице.

    Ова могућност би морала укључити бар следећe:

    1. Снимање укупног времена ротације;
    2. Приказ тог времена у формат који се лако чита (нарочито на минијатурном дисплеју); и,
    3. Брисање (ресетирање) укупног времена.

    Приступ

    Типично, Ардуино ресетира све параметре (променљиве) при сваком искључивању. На срећу, Nano има ЕЕПРОМ (non-volatile) величине једног (1) килобајта, што би требало бити довољно за ову фукнционалност.

    Имплементација је прилично једноставна:

    1. При сваког извршења главне петље, упоређује се број тикова (ticks) са ранијом вредности;
    2. Кад разлика тикова надмаши 1 секунду, у ЕЕПРОМ се упише нова вредност;
    3. Кад се напуни слот ЕЕПРОМ-а, показивач се повећа.

    Код

    Сва логика око снимања се налази унутар процедури checkTimer():

    void checkTimer()
    {
      if (timerCurrentMicros == 0 && timerPreviousMicros == 0)
      {
        timerCurrentMicros = micros();
        timerPreviousMicros = timerCurrentMicros;
      }
      else { timerCurrentMicros = micros(); }
      int timerSeconds = (int) ((timerCurrentMicros - timerPreviousMicros) / 1000000);
      if (timerSeconds > 0)
      {
        for (int e = 0; e < timerSlots; e++)
        {
          byte valueX = EEPROM.read(e);
          timerX[e] = (int) valueX;   
        }
        timerPreviousMicros = timerCurrentMicros;
        int changeX = timerSeconds;
        for (int e = 0; e < 4; e++)
        {
          timerX[e] += changeX;
          if (timerX[e] > 255)
          {
            changeX = timerX[e] - 255;
            timerX[e] = changeX;
            changeX = 1;
          }
          else
          {
            changeX = 0;
          }
          EEPROM.write(e, timerX[e]);
        }
      }
    }

    А регулира се уз помоћ пар променљива:

    unsigned long timerCurrentMicros = 0, timerPreviousMicros = 0;
    const int timerSlots = 4; int timerX[timerSlots]; const int timerMessageWait = 5000; long timerMessage = 0; boolean timerShown = false;

    Калкулација укупног времена је у процедури calculateRunTime():

    void calculateRuntime(int & calcX1, int & calcX2)
    {
      long runtimeX = 0;
      for (int e = 0; e < timerSlots; e++)
      {
        int tempX = (int) EEPROM.read(e);
        if (tempX > 0) { runtimeX += tempX * pow(255, e); }
      }
      calcX2 = (runtimeX / 60) % 60;
      calcX1 = (int) (runtimeX / 3600);
    }

    Ресетирање тајмера (ЕЕПРОМ-а) је у процедури clearTimer():

    void clearTimer()
    {
      if (activeSpin || !timerShown)
      {
        return;
      }
      writeToDisplay(5);
      for (int e = 0; e <= timerSlots; e++) {
        EEPROM.write(e, 0);
      }
    }

    Рад

    За приступ тајмеру, тахометар мора да буде у stand-by стању:

    1. Дужи притисак на дугме за промену брзине показује укупно време;
    2. Након 5 секунди дисплеј се враћа на stand-by мод;
    3. Дужи притисак на дугме за укључивања ротације док је дисплеј у моду првог корака (показано укупно време) ресетира тајмер.

    Приказ показује укупан број сати и минута, због ограничења простора на дисплеју:

    tachometer_timer.thumb.jpg.f1402f98b6ad8d86c5d93bc027eab567.jpg

    Закључак

    Ово је задње планирано унапређење. Будуће промене су планиране једино у склопу оддржавања.

    Код је, као и увек (4f0184d), овде:

    https://github.com/stojnev/dwr-controller

×
×
  • Kreiraj novo...