Jump to content

mars01

Membru activ
  • Content count

    1,288
  • Joined

  • Last visited

Community Reputation

150 Excellent

About mars01

  • Rank
    Rising
  • Birthday April 2

Profile Information

  • Locatie
    Bucuresti

Contact Methods

  • Yahoo
    marius_adrian@yahoo.com

Recent Profile Visitors

1,138 profile views
  1. FlatCAM

    Pentru aceia care nu stiu despre ce este vorba, FlatCAM este un program open source pentru realizarea de PCB prin tehnica izolarii folosind un router CNC. In ultima vreme am lucrat putin la codul sursa (sunt incepator in Python/PyQt) si am facut cateva imbunatatiri la o varianta FlatCAM care deja era "pe steroizi" avand accelerare 3D. De cca 2 ani nu s-a mai creat o versiune noua de catre programatorul principal dar sporadic au fost facute imbunatatiri care au putut fi accesate doar de aceia care instalau versiunea de dezvoltare si toolchain-ul necesar. Asa ca ultima versiune a ramas tot 8.5. In urma eforturilor mele am reusit sa generez un installer Windows astfel ca aveti posibilitatea sa va bucurati si voi de noile "feature" -uri. Este un asa numit NIGHTLY, (adica pot fi bug-uri) asa ca nu va speriati daca totul nu merge exact cum v-ati astepta ... Dar eu personal ma folosesc de el cu succes asa ca nu va "infricosati" prea tare. Eu am adaugat urmatoarele: - am introdus butoane de deschidere a fisierelor Gerber si Excellon direct in Toolbar; icon-urile sunt editate de mine in .... Paint asa ca ... dar sunt utilizabile - am redus numarul de zecimale pentru diametrul burghie, cand unitatile de masura sunt in MM, la fix doua. Inainte un burghiu putea avea diametru de 0.712345mm ceea ce era o durere pt ochi si oricum nu exista asa ceva. Numarul de zecimale mare se datoreaza faptului ca FlatCAM are ca unitati default pe cele imperiale si apareau din conversia in MM. Acum sunt doar doua zecimale. - am modificat fisierul de generare/ setup executabil si impachetare Python, pentru ca pachetul cxfreeze 5.0.1 sa mearga cum trebuie - am adaugat capabilitatea de a incarca fisiere Gerber cu dimensiune zero. Unele pachete CAD (cred ca si KiCAD) generau Outline cu dimensiune zero. Acest outline se folosea ca referinta pentru decuparea placilor din materialul PCB. - am adaugat functiile Paint All, Seed based din trunchiul principal al flatCAM peste aceasta versiune customizata care are accelerare 3D - am adaugat un algoritm de optimizare a miscarilor cand se face gaurirea (bazat pe "travelling salesman algorithm"). Il adaugasem si eu mai demult dar cel care a facut FlatCAM nu a fost de acord sa il includa pentru ca exista un algoritm mai eficient. Recent a mai aparut cineva care a implementat mai bine algoritmul asa ca am copiat acel patch si l-am inclus in acest 'fork" - am rezolvat niste buguri de actualizare a geometriei - am trecut la noua arhitectura de comenzi TCL (command line) pe care programatorul principal urmareste sa o faca default - chestii mai vechi pe care le-am programat si pe care JP (programtorul principal flatCAM) le-a inclus in software: ordonarea burghielor dupa diametru, selectarea completa a acestora ca si default, dupa gaurire se revine lent (G01 command) pana se iese din gaura si apoi se merge cu rapid (G00 command) pana la inaltimea de traversare - alte alea alea la nivel de comenzi TCL Si ce este mai important, ieri am adus in GUI (am inclus in meniul TOOLS) comanda de panelizare. Acum lucrez la utilitarul de masurare dimensiuni pe care vreau sa il fac sa faca snap la grid. Anterior modificarilor mele acest "fork" avea deja urmatoarele feature care nu se regasesc in versiunea de dezvoltare main a FlatCAM: - curatare de cupru a zonelor unde nu trebuie sa fie cupru is este "multi-tool" - fisierele incarcate sunt acum grupate dupa tip in Project Tab - panning in fereastra principala folosind butonul dreapta (sau cel central) al mousului - accelerare 3D cu OpenGL - axe in fereastra principala Sa il folositi cu placere. DOWNLOAD installer AICI.
  2. Materiale atelier serioase

    Aaa, nu este nevoie de bonus. Am mai cumparat de la dvs mai demult (din carbura, tip 'corn')si nu am stiut daca acum sunt alte tipuri. Atunci au fost mai multe de 1.8mm si cateva de 2.4mm in gramada. Se poate comanda pe diametru sau tot asa la gramada?
  3. Materiale atelier serioase

    Buna ziua, Frezele, ce diametru au la coada si ce diametru la zona de taiere? Ce lungime are zona de taiere? Sunt HSS sau din carbura? Sunt tip 'corn' pt taiat PCB sau cu 1,2,3,4 dinti? Multumesc!
  4. masina de gaurit in coordonate

    Salut, Banner-ul reclama de mai sus ii apartine. Firma HI-End este a lui. Adica: https://www.hi-end.ro/contactati-ne
  5. Burete decupat

    La o simpla cautare pe Google dupa cuvintele cheie: "materiale burete (spuma poliuretanica) cluj" gasesti pe unii care ar putea sa aiba si ce doresti. Nu scriu numele exact pentru ca poate se trezeste careva si ne depuncteaza/baneaza. In mod sigur mai sunt si altii asa ca " is your friend" Sarbatori Fericite!
  6. Prelucrare CNC

    Salut! Ai tabla? Daca da, te pot ajuta eu si pentru cantitati modeste (o rama si una, doua grile daca nu sunt complicate) nu te costa nimic
  7. Multiplexare vu metru

    Incearca si cu ghilimele in loc de mai mic si mai mare atunci cand incluzi un fisier .h. Poate merge asa. Ca sa iti dai seama daca fisierul este identificat poti da right click pe numele dintre mai mic mai mare (sau ghilimele) si apoi "Find Declaration". Ar trebui sa deschida fisierul respectiv. mikroC-ul mai face "figuri" cu recunoasterea fisierelor si a alias-urilor stabilite in fisierele cu microcontrolere din folderul Include. Cateodata tot ce trebuie facut pentru a rezolva este sa se restarteze programul.
  8. cumpar IRFP460

    Pretul pe bucata este 9.66125 lei (fara TVA) la unii si la altii este 9.87 (fara TVA) daca veti cauta online. Plus transport. Nu pot spune nume magazine din cauza regulamentului.
  9. De la versiunea 8 în sus, Eagle este doar în varianta pe 64bit. In ceea ce priveste functionalitatea, de Eagle am auzit dar de SoloPCB, nu. Ce mi se pare interesant este ca in ritmul in care se dezvolta Eagle, în curând ii va ajunge pe cei "mari".
  10. Cumpar cablaj

    Ca sa va ajute cineva cu PCB-ul trebuie sa specificati de unde veti procura componentele si cum preferati sa fie realizat: in tehnologie thru - hole sau SMD. Mai mult decat atat, trebuie sa specificati pentru fiecare componenta un link cu datasheet-ul acesteia pentru a determina footrint-urile pe PCB. Daca doriti sa montati si transformatorul pe PCB atunci trebuie mentionat si modelul aceluia cat si datasheet-ul. Ca si idee, pretul componentelor in varianta SMD (mosfetul si regulatorul sunt TH) fara sa includa transformatorul, este de cca 40lei (include TVA, mosfetul este cel mai scump ~15lei, pret calculat pe site furnizor de componente - nu mentionez care pentru ca un anume domn de aici de pe forum mi-a mai trimis un warning altadata pentru acelasi lucru). Pretul PCB-ului este probabil in jur de 20 ... 30 lei.
  11. De ieri, 8 Martie 2018, Eagle are un IPC footprint generator care se poate gasi si aici: https://library.io Va faceti un cont acolo si va generati acel footprint care va este necesar. In acest fel sunteti sigur ca footprint-ul este exact cel din datasheet pentru ca, evident, veti introduce datele din datasheet.
  12. Proteus probleme

    Salut, Pana acum nu am auzit de nici-un program ECAD care sa faca translatarea unui netlist dintr-o schema catre multiple PCB. Altium lucreaza acum la o interconectare mai stransa intre multiple sub-proiecte intr-un proiect multi-board dar chiar si asa fiecare "proiectel" are schema si PCB-ul sau. Iar interconectarea se face prin ... surpriza ....conectori.
  13. Timer cu PIC12F675

    Salut, Atasat ai proiectul mikroC cat si simularea proteus8. Resurse folosite: RAM 18bytes (38%) ROM 372bytes(36%) #include <stdint.h> /* Author: mars01 on elforum.info Date: 18 Feb 2018 */ /* HW setup: GP5 iesire pentru ON/OFF tranzistor GP4 citire tensiune de alimentare - ADC channel 3 GP2 intrare push button; ACTIVE LOW GP1 iesire LED rosu pentru vizualizare stare sursa oprit (in aceasta situatie GP5 = 0) GP0 iesire LED verde pentru vizualizare stare sursa pornit (in aceasta situatie GP5 =1) */ #define INPUT 1 #define OUTPUT 0 #define ACTIVE 0 #define INACTIVE 1 #define OUT GP5_bit #define OUT_DIR TRISIO5_bit #define ADC_CH3_DIR TRISIO4_bit #define BUTTON GP2_bit #define BUTTON_DIR TRISIO2_bit #define LED_R GP1_bit #define LED_R_DIR TRISIO1_bit #define LED_G GP0_bit #define LED_G_DIR TRISIO0_bit //function prototypes void hw_init(); uint8_t read_button(); void idle_handler(); void run_handler(); void error_handler(); void shutdown_handler(); uint16_t read_voltage(); enum { OFF = 0, ON = 1 }; typedef enum state{ IDLE, RUN, ERROR, SHUTDOWN }state_t; //working variables state_t FSM_state, previous_state; volatile uint8_t flag = 0; void hw_init(){ OSCCAL = 0x80; //oscilator is set in center frequency //init timer0 T0CS_bit = 0; //TMR0 clock source is internal osc //set prescaler to 1:8 PS2_bit = 0; PS1_bit = 1; PS0_bit = 0; PSA_bit = 0; //prescaler assigned to TMR0 TMR0 = 131; //interrupt frequency is 1ms T0IE_bit = 1; //enable interrupt on TMR0 overflow GIE_bit = 1; //enable general interrupts CMCON = 0x07; //disable comparators //select channel 3 of ADC, the rest of pins are digital IO ANSEL = 0b00001000; ADC_CH3_DIR = INPUT; BUTTON_DIR = INPUT; OUT_DIR = OUTPUT; OUT = OFF; LED_R_DIR = OUTPUT; LED_R = ON; LED_G_DIR = OUTPUT; LED_G = OFF; ADC_init(); } //interrupt function is called each 1ms void interrupt(){ static uint16_t cnt = 0; if (T0IF_bit && T0IE_bit){ T0IF_bit = 0; TMR0 = 131; if (flag == ON){ if (cnt >= 500){ cnt = 0; LED_R = !LED_R; } else cnt++; } } } uint8_t read_button(){ static uint8_t old_button = INACTIVE; if (BUTTON == INACTIVE){ old_button = INACTIVE; } if (BUTTON == ACTIVE && old_button == INACTIVE){ delay_ms(10); if (BUTTON == ACTIVE){ old_button = ACTIVE; return 1; } } return 0; } uint16_t read_voltage(){ uint8_t i; uint16_t voltage = 0; ADC_read(3); //dummy read for (i = 0; i < 10; i++){ voltage += ADC_read(3); } return (voltage / 10); } void idle_handler(){ if (read_button()){ FSM_state = RUN; previous_state = IDLE; } } void run_handler(){ if (previous_state != RUN){ previous_state = RUN; if (read_voltage() >= 400){ OUT = ON; LED_R = OFF; LED_G = ON; } else FSM_state = ERROR; } if (read_button() && (FSM_state != ERROR)){ FSM_state = SHUTDOWN; } } void error_handler(){ if (previous_state != ERROR){ previous_state = ERROR; OUT = OFF; LED_G = OFF; flag = ON; } if (read_button()){ flag = OFF; FSM_state = SHUTDOWN; } } void shutdown_handler(){ OUT = OFF; LED_R = ON; LED_G = OFF; FSM_state = IDLE; } void main() { hw_init(); FSM_state = IDLE; while(1){ switch(FSM_state){ case IDLE: idle_handler(); break; case RUN: run_handler(); break; case ERROR: error_handler(); break; case SHUTDOWN: shutdown_handler(); break; } } } LE: uitasem sa atasez arhiva cu proiectul (nu apasasem butonul "Attach This File" ...). FRobert.zip
  14. Timer cu PIC12F675

    Cand nimeni nu raspunde este un semnal pentru tine ca ceva nu este in regula cu enuntul problemei cu care te confrunti. Iti recomand sa faci o noua prezentare a problemei tale in care sa acoperi toate starile posibile: stari de inceput, stari intermediare, stari finale si fluxul in care evolueaza din una in alta. Clar, punctual, altfel de ex eu nici nu imi bat capul sa citesc. Succes! LE: Si inca un lucru: daca vrei ca sa ti se citeasca codul ... posteaza-l folosind butonul "CODE" corespunzator din bara de postare. Arata asa: "<>". Ca sa nu mai spun ca trebuia sa iti creezi propriul topic.
  15. Simulare in Proteus - nelamuriri

    Aureliu: - atunci cand se face instalarea Proteus, la un moment dat apare calea de instalare. In acel moment apesi pe ceva numit "custom" (numai stiu exact cum este denumit butonul) si apar doua linii cu doua cai de instalare. Copiezi prima linie in a 2 a linie astfel incat sa ai acelasi lucru si in prima linie si in a2 a. In acest fel toate fisierele se instaleaza in acelasi fodler din program files x86. Tu ai mers pe default (ai dat next-next fara sa te uiti ce faci) si acum o parte din fisiere se gasesc intr-un folder ascuns C:\Program Data/Labcenter Electronics sau ceva de genul. - la finalul instalarii Proteus se ofera sa ruleze cand se apasa finish. E un buton cu tick pe el. Debifeaza acel tick si apasa Finish. - apoi faci click dreapta pe iconul de rulare a Proteus si click stanga pe optiunea : "Run as administrator" Cristi: - intri in locatia (calea): "C:\Program Files (x86)\Labcenter Electronics\Proteus 8 Professional\BIN" - dai click dreapta pe fisierul pds.exe si apoi click Properties - te duci la tabul Compatibility si daca poti, bifeaza " Run this program as an administrator" si apoi OK. Daca nu merge atunci in acelasi tab Compatibility apasa "Change settings for all users" si bifeaza " Run this program as an administrator", apoi OK, OK. Aceasta ca sa numai trebuiasca sa rulezi de fiecare data cu Run as administrator. Cred ca numai trebuie sa subliniez ca unele programe au "tendinta" de a "suna acasa". Mai exact, la fiecare pornire a programului se conecteaza la serverele producatorului si raporteaza diverse. Pentru cei care nu agreeaza acest lucru (sunt foarte multi de aceea precizez acest lucru aici), trebuie adaugata o regula in Firewall-ul windows care sa blocheze executabilul de la conectare la internet. Nu stau sa fac un tutorial aici ca ma plictisesc scriind, dar la o cautare pe Google gasiti ce trebuie. Ceva de genul: https://playtech.ro/2016/windows-firewall-cum-blochezi-sau-permiti-accesul-unei-aplicatii/
×