CAM-fråga, generera spiralspår med varierande djup?

Robot, CNC, Pneumatik, Hydraulik, mm
Användarvisningsbild
Walle
Moderator
Inlägg: 7701
Blev medlem: 14 december 2004, 10:32:18
Ort: Stockholm

Re: CAM-fråga, generera spiralspår med varierande djup?

Inlägg av Walle »

En intressant tanke kan vara att montera någon form av solenoid som trycker på gravyrstiftet, och sedan mata den med analogt ljud medans fräsen kör spiralen. :)
Användarvisningsbild
zeus
Inlägg: 7058
Blev medlem: 17 juni 2003, 22:13:44
Ort: Sthlm.

Re: CAM-fråga, generera spiralspår med varierande djup?

Inlägg av zeus »

Snygg lösning Walle!
Det eller en högtalare med anpassad slaglängd.
Användarvisningsbild
dar303
Inlägg: 5979
Blev medlem: 17 december 2003, 19:54:56
Ort: Sthlm

Re: CAM-fråga, generera spiralspår med varierande djup?

Inlägg av dar303 »

Man behöver variera djupet mellan två olika nivåer kanske 10ggr/mm för att det ska låta något misstänker jag, annars låter det bara dunk dunk dunk när man byter nivå.

Om jag får för mig att bygga en maskin specifikt för detta så blir det nog både diamantstift och en dremel (för centrumhål etc) och diamantstiftet styrt av en solenoid.
Då funderar jag på roterade bord också.

Typ en arbetsgång som är så här:
Lägg valfritt material på den låsta bottenplattan/bordet.
Fräs/borra centrumhålet och ett styrhål.
Sätt i ett stift i styrhålet ner i plattan, sätt i ett centrumstift eller en skruv som håller fast skivan.
Bordet börjar snurra och "skivan" graveras.
Efteråt skärs formen om det behövs, den behöver inte vara rund.

Fast först ska det funka med den vanliga maskinen!
Användarvisningsbild
Andax
Inlägg: 4379
Blev medlem: 4 juli 2005, 23:27:38
Ort: Jönköping

Re: CAM-fråga, generera spiralspår med varierande djup?

Inlägg av Andax »

Har hackat ihop ett litet matlab program som spelar upp en sinus på 110 Hz om man roterar skivan med 45 rpm:

Kod: Markera allt

R0 = 40.0;          % Start radius
dR = -0.5;          % Radius step per revolution
R1 = 10;            % Stop radius

N = (R1-R0)/dR;     % Number of tracks

rpm = 45;           % target rotation speed, rotations per minute
rps = rpm/60;       % rotations per second

f_sample = 1378;    % sampling frequency Hz
dt = 1/f_sample;    % delta time between samples

t = (0:dt:(N/rps))';  % time vector from start to end

R = R0 + dR*rps*t;  % Radius as a function of time t
fi = 2*pi*rps*t;    % Angle as a function of time t

X = R.*cos(fi);     % X coordinate as a function of angle and radius
Y = R.*sin(fi);     % Y coordinate as a function of angle and radius

Z = sin(2*pi*110*t);    % generate a sinus at 110 Hz

plot3(X,Y,Z);
axis equal

fid = fopen('test.txt', 'wt');
fprintf(fid, 'G01 X%0.3f Y%0.3f Z%0.3f\n', [X Y Z]');
fclose(fid);
spiral.png
spiral_tilted.png
Not: tanken med att jag valt 1378 Hz samplingfrekvens är att man sen kan komplettera med att läsa en vanlig WAV-fil på 44100 Hz och lågpassfiltrera den och plocka ut vart 32 sample som Z värde...
Du har inte behörighet att öppna de filer som bifogats till detta inlägg.
Användarvisningsbild
dar303
Inlägg: 5979
Blev medlem: 17 december 2003, 19:54:56
Ort: Sthlm

Re: CAM-fråga, generera spiralspår med varierande djup?

Inlägg av dar303 »

Haha, helt fantastiskt, vilket bra forum det här är!
Jag ska försöka få tid imorgon att sätta mig in i detta och kanske testa, tack!

Jag pratade förut med en annan forummedlem som hade lyckats koda in ljuddata i spåret med solidworks (tror jag) , hoppas han ger sig till känna!
Användarvisningsbild
dar303
Inlägg: 5979
Blev medlem: 17 december 2003, 19:54:56
Ort: Sthlm

Re: CAM-fråga, generera spiralspår med varierande djup?

Inlägg av dar303 »

Jag visade programmet och koden för konstnärerna och de skrattade rakt ut av glädje! Vi ska försöka testa idag eller imorgon, "vanliga" arbetsuppgifter kommer i vägen hela tiden!
Användarvisningsbild
Andax
Inlägg: 4379
Blev medlem: 4 juli 2005, 23:27:38
Ort: Jönköping

Re: CAM-fråga, generera spiralspår med varierande djup?

Inlägg av Andax »

Kul att ni tyckte om det. Det är ett fräckt projekt, och det är alltid roligt att kunna bidra med något.
Användarvisningsbild
dar303
Inlägg: 5979
Blev medlem: 17 december 2003, 19:54:56
Ort: Sthlm

Re: CAM-fråga, generera spiralspår med varierande djup?

Inlägg av dar303 »

En fråga: Det ser ut som Z går mellan +/- 1mm, går det att få den att bara gå minus och där variera mellan 0 och -1 eller mindre, kanske som en option i programmet?
Jag skulle gärna testa med R0 på 20mm så jag får in tre eller fyra på ett europakortslaminat!

Kolla vad sjukt det ser ut när man kör programmet, stackars maskin! :)


...och så dummy-frågan...hur kör man programmet, finns det trials på Matlab att köra?
Användarvisningsbild
ahlsten
Inlägg: 659
Blev medlem: 12 november 2005, 00:24:14
Ort: Uppsala

Re: CAM-fråga, generera spiralspår med varierande djup?

Inlägg av ahlsten »

Det går kanske att köra i GNU Octave?

För att justera Z-axelns omfång borde du kunna du byta ut

Kod: Markera allt

Z = sin(2*pi*110*t); 
mot

Kod: Markera allt

Z_max = 0;                                   % antar att alla mått är i mm
Z_min = -1;

amplitud = Z_max - Z_min;
offset = (Z_max + Z_min)/2;
Z = (amplitud/2).*sin(2*pi*110*t)+offset;    % ny amplitud blir den önskade delat på 2, den för sinus vanliga amplituden
Användarvisningsbild
dar303
Inlägg: 5979
Blev medlem: 17 december 2003, 19:54:56
Ort: Sthlm

Re: CAM-fråga, generera spiralspår med varierande djup?

Inlägg av dar303 »

Jag testade med FreeMat och det verkar bannemig funka! Det går lite sakta för mig då jag bara har matte C och aldrig arbetat med annat än basicprogrammering så ursäkta om jag verkar trög ibland! :)
Användarvisningsbild
Andax
Inlägg: 4379
Blev medlem: 4 juli 2005, 23:27:38
Ort: Jönköping

Re: CAM-fråga, generera spiralspår med varierande djup?

Inlägg av Andax »

Koden använder inga jättespeciella funktioner från någon extra matlab toolbox så det borde som sagt funka med både octave och freemat.

Ahlstens justering av arbetsområde i Z-led funkar fint. Vill du sedan läsa in riktigt ljud kan man använda funtionen:
Z = wavread('fileaname.wav');
Behövs kanske lite skalning där med för att få arbetsområdet rätt. Har du/ni något test exempel på ljudfil som ni vill konvertera kan ni kanske lägga upp den så tittar jag på den och fixar så att den har formatet som ni behöver.

Snygg film! :tumupp:
Användarvisningsbild
dar303
Inlägg: 5979
Blev medlem: 17 december 2003, 19:54:56
Ort: Sthlm

Re: CAM-fråga, generera spiralspår med varierande djup?

Inlägg av dar303 »

Tack så hemskt mycket Andax och Ahlsten!
Jag hann lägga till ändringarna för Z-skalningen innan jag gick hem och koden ser bra ut, ska bara editera lite och testköra i luften imorgon, sen blir det skarp körning!
Matlab är ju verkligen mångsidigt, jag kan se det tom för en sån här enkel grej!
Inom min branch (experimetellt ljud) finns en del liknande programvara som t.ex SuperCollider, MAX/MWSP och Csound som är programmeringsmiljöer för ljud och bilexperiment och detta verkar ju vara ett bra komplement!

Andax: Jag ska testa imorgon så återkommer jag med en wavefil!
Det kan bli så att jag måste bygga om en pickup lite för de grova groparna som vi åstadkommer, måste testa med 110hz-filen först!
Användarvisningsbild
dar303
Inlägg: 5979
Blev medlem: 17 december 2003, 19:54:56
Ort: Sthlm

Re: CAM-fråga, generera spiralspår med varierande djup?

Inlägg av dar303 »

Den graveras nu när vi är på lunch:



Lite djup gravyr, ska skala ner för nästa test.
Användarvisningsbild
dar303
Inlägg: 5979
Blev medlem: 17 december 2003, 19:54:56
Ort: Sthlm

Re: CAM-fråga, generera spiralspår med varierande djup?

Inlägg av dar303 »

En liten ögonblicksbild på gravyr med spannet 0.5mm istället:
Photo 2011-10-21 13 59 01.jpg
Du har inte behörighet att öppna de filer som bifogats till detta inlägg.
Användarvisningsbild
dar303
Inlägg: 5979
Blev medlem: 17 december 2003, 19:54:56
Ort: Sthlm

Re: CAM-fråga, generera spiralspår med varierande djup?

Inlägg av dar303 »

De små var lite för små för att gå att använda även om det var bra test, jag gjorde en 8cm version med 500hz ton på:


Sen ville de ha detta material ovanpå (!) en riktig 7":a, så det fixade jag!

Jag hade bråttom så jag drog upp matningen till ca 2000mm/min, en hårt plågad Boris-fräs blev resultatet, man brände sig på Z-motorn!

Ni kan troligen höra båda skivorna i kväll på kulturhuset, Vinyl Terror & Horror:
http://soundofstockholm.se/event/sekt-h ... and-horror

Här är en rutin jag fick av en annan forummedlem nyss:
[Z,fs] = wavread('filnamn');
Z=Z-max(Z);
RPM = 33;
R0 = 30;
dr = 0.05;
p = .1; %skalning av z
t = [1/fs:1/fs:size(Z,1)/fs]';
Vt = t*(RPM/60)*2*pi;
Rt = R0-(dr*t*(RPM/60));
%X=Rt.*cos(Vt); %freemat
%Y=Rt.*sin(Vt); %freemat
[X,Y]=pol2cart(Vt,Rt); %matlab
Z = Z*p;
%plot3(X,Y,Z);
%fid = fopen('test.txt', 'wt');
%fprintf(fid, 'G01 X%0.3f Y%0.3f Z%0.3f\n', [X Y Z]');
%fclose(fid);

Vi ska forska mer nästa vecka, mer tokerier coming up! :)
Skriv svar