HobbyCNC fórum
FTP tárhely: http://cnctar.hobbycnc.hu v0.9.6 Régi HobbyCNC oldal: http://archiv.hobbycnc.hu

Új regisztráció / Átregisztráció a régi fórumról
    
   


LinuxCNC a gyakorlatban

xxxx

 

Időrend:
Oldal 36 / 99 Ugrás ide:
Sorok:
|◄ Első  ◄ Előző   32  33  34  35  36  37  38  39  40   Következő ►  Utolsó ►|

  Fórum főoldal  |  A lap aljára

Kopter | 53    2014-02-05 15:37:00 [3197]

Üdv mindenkinek!
A Linux CNC-ben hogy lehet alprogramot behívni?
Egy rövid útmutatást kérnék,ha lehet.
Köszönöm!


lari | 1192    2014-02-02 17:36:00 [3196]

Nekem is hasonló optóval működik, de 110-es tárcsa átmérővel így a rés szélessége is valamivel nagyobb.

Előzmény: Miki2, 2014-02-02 08:49:00 [3191]


Miki2 | 2333    2014-02-02 16:14:00 [3195]

Előzmény: Miki2, 2014-02-02 08:49:00 [3191]


gorbi | 331    2014-02-02 09:33:00 [3194]

a link valamiért nem jött össze de itt van ujra:
http://users.atw.hu/teora/tudnivalok/anyagok.html


gorbi | 331    2014-02-02 09:31:00 [3193]

Én az órás szakmám kapcsán találkoztam spéci anyagokkal amelyeknek kicsi a hőtágulási együtthatója, de lehet hogy nem lenne olcsó ezekből etalont készíteni. De a régi időkben is megoldották az ingaórák hosszváltozásának a kompenzálását. órás anyagok

Előzmény: n/a (inaktív), 2014-01-22 00:23:00 [3185]

Miki2 | 2333    2014-02-02 08:56:00 [3192]

nmax 200 1/perc=nmax 2000 1/pec

Előzmény: Miki2, 2014-02-02 08:49:00 [3191]


Miki2 | 2333    2014-02-02 08:49:00 [3191]

Tisztelt hozzáértő fórumtársak!
Lenne egy (talán bugyuta) kérdésem:
Van-e valamilyen előírás a főorsó végi INDEX, illetve ENCODER tárcsa résszélességét illetően.
Vagy ez kizárólag az alkalmazott érzékelő tulajdonságain múlik?
Amit szeretnék:
nmax 200 1/perc
Alkalmazott opto: TCST 2300
Résszélesség 0.9 mm.
Ø60 mm-es tácsa 100 réssel ekkora résszélességet ad.

Fog ez így működni?
Itt az opto adatlapja.


vjanos | 5562    2014-01-25 19:33:00 [3190]

Sziasztok,
Küzdöttem ma egy kicsit ismét a linuxcnc-vel.
Sikerült megmozgatni a motorokat

Egy ősi S3 trio 16Mb vga van a gépben, ezzel 15000 körüli értékek jönnek ki a latency teszten. Ha mozognak a motorok, "szemetel a kép", mindenféle grafikai hibák jelennek meg.
Kicseréltem egy ATI Radeonra, azzal szép a kép, de minősíthetetlen 300000-es értékek lettek (20x nagyobb)
Ennyire érzékeny ez a linux?

Ha rá van dugva a párhuzamos portra a leválasztó kártya, csak egyszer tudom elinditani a linuxcnc-t. Mármint ha bezárom, utána nem indul el a köv bootolásig. Valami olyasmit silabizálok ki a dump-ból, hogy a PARPORT használatban marad :S


Nemes Mihály | 406    2014-01-22 17:53:00 [3189]

Köszönöm a Segítséget!!!

Eredmény!!!! Okés !!!

Előzmény: bjam28, 2014-01-21 12:38:00 [3180]


svejk | 33043    2014-01-22 15:06:00 [3188]

3000 mm +- mennyi a mérendő darab hossza?
Egyáltalán mit kell mérni egyszerű rúdanyagot, vagy nem mozdítható tárgyakat, tehát a mérőeszköznek kell mobilnak lennie?
Az első aránylag egyszerű, de a második már nem hobby kategória.

Előzmény: n/a (inaktív), 2014-01-22 00:23:00 [3185]


Rabb Ferenc | 4361    2014-01-22 11:52:00 [3187]

Egy kicsit sok az a ~4mm. Pont két nagyságrenddel kisebb.

Előzmény: keri, 2014-01-22 10:58:00 [3186]


keri | 14033    2014-01-22 10:58:00 [3186]

Azért remélem azt tudod, hogy utoljára ilyet a ferihegyi reptér sepciális műhelyében láttam, ott temperált környezetben, lézer távmérővel mértek ki egy hosszú alkatrészt ilyen pontossággal, és még az amcsik is csodájára jártak hogy ezt képesek voltunk megcsinálni.

Szóval ez már erősen űrtechnika.
És ugye az acél 3 méteren már ~4mm hosszváltozást szenved el minden egyes fok hőmérséklet változással.

Mérőléc éppen ezért nincs ilyen hosszú.

Ha csak egy fix méretet kell megállapítani akkor a munkadarab anyagával egyező etalont használnék, és a munkadarabot 1-2 napot a temperált mérőhelységben hagynám.

Ha ~3méteres darabok hosszát kell megállapítani akkor az etalon végére szerelnék egy rövidebb mérőlécet, szintén temperált helységben a fent leírt módszerekkel.

Az etalont egyszer le kell gyártani, ez sokba kerülhet.

Ha rájöttél hogy mégsem kell ilyen precizitás, mert általában nincs szükség ilyenre, akkor precíziós acél mérőszalag van ilyen hosszú. Ezek pontosan vannak kimérve, de koránt sem 0,01mm pontosságúak a fent említett problémák miatt.

Mozgólépcsőt, repülőt, stb. úgy szoktak csinálni hogy a monolit betonpadlóra rögzítik referencia pontokat (egyszerűbb esetben krétával felrajzolják) és erre építenek mindent. Egymáshoz viszonyított méret eltérés nem lesz, az abszolut méretet pedig úgy sem tudja senki ellenőrizni űrtechnika nélkül, tehát jelentősége sincs, de meg elég a precíziós mérőszalag.

CERN-ben ahol szó szerint atom pontossággal kell dolgozni, utólagos hézagoló lemezekkel oldják meg és laseres mérőberendezéssel teszik helyére a dolgokat, gondolom ott is precízen temperált az egész csarnok és gyűrű.

Előzmény: n/a (inaktív), 2014-01-22 00:23:00 [3185]


n/a (inaktív)    2014-01-22 00:23:00 [3185]

Sziasztok! Lehet nem pont ebbe a topicba való, de hasonló tèma. Hosszmérést kéne megvalósítanom 3000 mm hosszban, kb 0,01mm pontossággal, PC-n futó kiértékeléssel. A kiértèkelés jó/nem jó szintű kell legyen, megadható paramèterekkel. Mérőléces kivitelben. Mit ajánlanátok? Merre induljak? Köszönöm előre is!


vjanos | 5562    2014-01-21 23:17:00 [3184]

Ja, egy vénséges LCD monitor 1024 felbontással.

Előzmény: smalla, 2014-01-21 22:43:00 [3182]


vjanos | 5562    2014-01-21 23:16:00 [3183]

Áááá, elindult.

Bejött a login prompt ctrl-alt-f1 -re, ott kétszer meg kellett változtatnom valamiért a jelszót? :S
more paranccsal megnéztem a xorg.logot, de nem találtam error-t benne. Mást nem csináltam.
Rebootoltam, azóta már többedszerre elindul a grafikus rész.

Nem tudom mi történt, de köszi

Előzmény: smalla, 2014-01-21 22:43:00 [3182]

smalla | 1114    2014-01-21 22:43:00 [3182]

mikor normál módban elindítod és fekete képernyőnél ctrl-alt+f1-et nyomsz bejön a login prompt?
meg kellene nézni az xorg.log fájlt a /var/log/ ban valahol, hogy mitől hasal el. LCD monitorod van vagy katódsugaras?

Előzmény: vjanos, 2014-01-21 21:40:00 [3181]


vjanos | 5562    2014-01-21 21:40:00 [3181]

Segítség, szopat a linux.

Legújabb linuxcnc-t telepitetem egy régebbi gépre. Felment, de első bootolásnál nem jött be a grafikus rész.
Próbáltam recovery módban, ha kérek egy konzolt, aztán egy startx parancs, akkor elindul de nem tudom mit kéne tenni.


Próbáltam megeditálni a boot parancsokat, kiszedve a "quiet splash"-t.
Ahogy futnak a sorok, valami "settings sensor limits [ok]" az utolsó amit látok, aztán jön egy üres, kurzor nélküli képernyő.

keresgélve végtelen db ilyen problémát találtam.
"nomodeset xforcevesa acpi=off" boot varázsszavak nem segítenek.

Ekkor kivettem a winyót, áttettem egy másik gépbe.
Pont ugyanez.
Végigpróbáltam három videokártyát, de semmi változás.

Mindkét gép régebbi AMD procis, 1gb ram.
Felejtsem el?


bjam28 | 750    2014-01-21 12:38:00 [3180]

Szia Mihály!

Elvileg jó lehet, a gyakorlatban meg nem biztos..

Nem (csak) a processzor frekvenciától függ. Erősen befolyásolja az eredményt az alaplap többi eleme.
Futtasd a késleltetési tesztet és pontos eredményt kapsz.

Előzmény: Nemes Mihály, 2014-01-21 11:56:00 [3179]


Nemes Mihály | 406    2014-01-21 11:56:00 [3179]

Sziasztok!!!

Gyors kérdés!!!

Intel® Celeron 430 (1.8Ghz/800MHz,512KB)
Proceszor-al ellátott gép, jó lenne Linux Cnc.hez????

Válaszotokat előre is köszönöm??


n/a (inaktív)    2014-01-20 18:18:00 [3178]

Szia,
teljesen igazad van, furcsa ez a kártya. Már az is furcsa, hogy az LPT pin1-et pazarolja el (ami amúgy egy I/O pin...) arra, hogy az legyen az X step. A kártya egy gépész barátomé, én magam AVR hw/sw -rel dolgozom Linux alatt, szóval a nagyon gyerekes kérdéseim csak az ismeretlen cnc területnek szólnak. Mivel semmi bekötést nem kapam a kártyához, így a TB6560 lábait tekintettem fixnek és fóliakövetés/ohmmérős kicsengetés alapján jutottam a közölt bekötéshez. Szóval a bekötés biztos.
Én magam biztos nem ilyen hülye bekötéssel terveztem volna a nyákot, de hát ez kínai. No comment...
Egyelőre a kártyán egy motor lóg, most szólok a cimborának, hogy hozza a másik kettőt. Addig nem akart nekikezdeni a mechanikának, míg tekergetni nem tudom a motorokat. Hát egy motor már követi mintakénr betöltött achimedesi spirált.

Előzmény: bjam28, 2014-01-20 14:34:00 [3177]


bjam28 | 750    2014-01-20 14:34:00 [3177]

Szia !

A StepConf-ban válaszd ki az "Unused" opciót annak a be/kimenetnek amit nem használsz. Az LPT kimeneten a nem használt lábakat hagyd úgy ahogy vannak, nem kell se le, se fel húzni. A program egyszerűen nem figyeli azok állapotát.

Ha kell az engedélyező jel a léptető vezérlőnek, akkor meg válaszd a megfelelő lábra az "Amplifier Enable" jelet. Nekem furcsa hogy három értékes lábat is elpazarolna a tengelyek engedélyezésre a kínai. Ilyet nem szokás tenni, illetve ezt másképp oldják meg.

Biztos, hogy jó az az LPT port kiosztás amit írtál?


Előzmény: n/a (inaktív), 2014-01-20 14:12:00 [3176]


n/a (inaktív)    2014-01-20 14:12:00 [3176]

Akkor az enable lábakat elég "Unused"-re állítani és statikus Vcc/GND szintre kötni? (Majd meg kell néznem, mi az aktív engedélyező szint.)
Egyébként meg köszönöm a segítséged!

Előzmény: bjam28, 2014-01-19 13:40:00 [3174]


Miki2 | 2333    2014-01-19 16:42:00 [3175]


Köszönöm, várom a hívásod.

Előzmény: bjam28, 2014-01-19 13:28:00 [3172]


bjam28 | 750    2014-01-19 13:40:00 [3174]

Bocs, benéztem, már leírtad a kiosztást.

Innen meg elég egyszerű: Engedélyezd az enable lábakat direktbe (húzd fel 5V-ra vagy GND-re attól függően mi az aktív jelszint), legalábbis amíg el nem indul a cucc.

A Step/Dir jelek egyértelműek. A relé pedig tetszés szerint. De jussunk el előbb addig, hogy mozgatod a léptetőket.

Előzmény: bjam28, 2014-01-19 13:35:00 [3173]


bjam28 | 750    2014-01-19 13:35:00 [3173]


Szia!

Az engedélyező jel (TB6560: enable) az az "Amplifier enable" a StepConf-ban. De szerintem a kínai vezérlő simán elmegy "enable" nélkül is, valószínüleg alapból engedélyezve van.

Ha leírod melyik LPT lábon mi van a vezérlődön, akkor segítünk kitalálni, mi hogyan legyen a StepConf-ban.

A Sherline vagy Xilotex kiindulásnak jó max., de annyi erővel nulláról is lehet indulni, nem érdemes velük foglalkozni.

Előzmény: n/a (inaktív), 2014-01-19 13:01:00 [3170]

bjam28 | 750    2014-01-19 13:28:00 [3172]

Miki!

Majd felhívlak, hogy tisztázzunk pár dolgot aztán leírjuk die a megoldást.

Előzmény: Miki2, 2014-01-19 09:45:00 [3169]


Sz.József | 3148    2014-01-19 13:10:00 [3171]

Szerintem meg ne az IC lábkiosztását sasoljad " (TB6560 pin4 enabel)", hanem az LPT csatlakozó lábkiosztását...

Előzmény: n/a (inaktív), 2014-01-19 13:01:00 [3170]


n/a (inaktív)    2014-01-19 13:01:00 [3170]

Az összes pdf-et lementettem, egy részüket ki is nyomtattam. Megpróbáltam a leírás alapján elindulni, de pont a Stepconf Wizard az, amiben máris megakadtam. A kártyámon a TB6560 IC enable lábára (TB6560 pin4) a printer csati pin2-ről indul a jelút - de a pin2-re választható funkciók közt nincs enable. Sem a Sherline, sem a Xilotex nem ad ilyen lehetőséget. Ezért nem tudom a leírást követni.

Előzmény: bjam28, 2014-01-19 06:42:00 [3167]


Miki2 | 2333    2014-01-19 09:45:00 [3169]

Köszönöm a válaszod.
A főorsó elindítása és leállítása az alacsonyabb fordulaton megmarad az M3..M5 kódokkal.
Mint korábban írtam, ez egyébként a Dahlander motort kapcsolja több mágneskapcsoló segítségével a nagyobb fordulatra.
Jelenled a Mach3 intézi ezt az általam összekalapált M31.m1s fájl segítségével.
Azt kérlek írd még meg, hol, milyen kiterjesztéssel keressem a most működő M3..M5 parancsok fájljait.

Köszönöm.


Előzmény: bjam28, 2014-01-19 06:37:00 [3165]


bjam28 | 750    2014-01-19 07:04:00 [3168]

Itt egy példa egy valamilyen féle TB6560 konfigra:
http://tanky-turk.blogspot.hu/2012/06/tb6560-driver-board-and-linuxcnc.html

Melyik részét nem tudod beállítani a wizardból?

Előzmény: bjam28, 2014-01-19 06:42:00 [3167]


bjam28 | 750    2014-01-19 06:42:00 [3167]

Szia!

Ezeket mind be lehet állítani StepConf wizardból. Ide még nem kell kézzel hegesztett HAL file.

Dokumentáció a LinuxCNC.hu-n

Ha elolvastad a doksit és akkor sem megy, akkor tedd fel újból a kérdést!


Előzmény: n/a (inaktív), 2014-01-18 20:40:00 [3161]


bjam28 | 750    2014-01-19 06:38:00 [3166]

Ja, hogy ne kelljen végigolvasni az egész könyvet: 126. oldalon van amit keresel

Előzmény: bjam28, 2014-01-19 06:37:00 [3165]


bjam28 | 750    2014-01-19 06:37:00 [3165]

Szia Miki!

Neked az M100-M199 felhasználó által definiált M kódok a megoldás.

Itt a leírás angolul.

Gyakrlatilag pont azt csinálja a példában említett M101, M102 kód ami Neked kell, e relét kapcsolgat ki/be a parport 14. pin-nel.

Felteszek róla egy fordítást a LinuxCNC.hu-ra a jövő héten.

A főorsó ki/bekapcsolására miért nem jó az M3/M5 páros?


Bakter!!! Most nézem, hogy már lefordítottam két éve:
Ott a példa a LinuxCNC (EMC 2.4) felhasználói kézikönyvben.
Itt on-line,

Itt meg letölthető pdf-ben.

Akkor nem fordítok semmit Ha további kérdés van, tedd fel!

Előzmény: Miki2, 2014-01-18 19:55:00 [3160]


Béni | 2076    2014-01-18 21:47:00 [3164]

Sajnos nem tudom a megoldást.
Itt ez összetettebb feladat, mint a Mach-nál.
Még nem foglalkoztam ilyesmivel, és a közeli jövőben nem is lesz rá lehetőségem ...

Előzmény: Miki2, 2014-01-18 21:23:00 [3163]


Miki2 | 2333    2014-01-18 21:23:00 [3163]

Köszönöm a linket.
Kérlek. ha nem túl nagy fáradtság, írd le nekem,
hogy ezt a négy sorból álló M31.m1s nevű fájlt
hogyan tudom linuxra áttenni.
Ez egyébként a Dahlander motort kapcsolja több mágneskapcsoló segítségével a nagyobb fordulatra.

Előzmény: Béni, 2014-01-18 20:51:00 [3162]

Béni | 2076    2014-01-18 20:51:00 [3162]

A LinuxCNC alatt lehet létrehozni saját 'M' és 'G' funkciókat is. Sőt, a meglévőket is lehet sajáttal helyettesíteni.

Viszont nem olyan egyszerűen, mint a Mach3-nál.

http://www.linuxcnc.org/docs/devel/html/remap/structure.html

Előzmény: Miki2, 2014-01-18 19:55:00 [3160]


n/a (inaktív)    2014-01-18 20:40:00 [3161]

Sziasztok,
a kínai TB6560-at szeretném LinuxCNC-hez konfigurálni, de wizard csak menüből engedi a pin-ek funkcióját kiválasztani. Ez meg nagyon nem stimmel ezzel a kártyával.
Ha jól értettem a net böngészése alapján, nekem akkor kézzel kell egy hal file-t szerkesztenem - bár gyanítom, hogy ilyen készen is fellelhető?
A driver IC-k megfelelő lábaitól visszafele követve a jelutakat, a printer csati kiosztása így adódott:
PIN1 X step
PIN2 X enable
PIN3 Y enable
PIN4
PIN5 Y dir
PIN6
PIN7 Zdir
PIN8
PIN9 Z step
PIN10
PIN11 Z enable
PIN12
PIN13 X dir
PIN14
PIN15 Y step
PIN16
PIN17 relé vezérlés
PIN18 GND
PIN19 GND
PIN20 GND
PIN21 GND
PIN22 GND
PIN23 GND
PIN24 GND
PIN25 GND
Segícccség.....


Miki2 | 2333    2014-01-18 19:55:00 [3160]

Szervusztok.
Csak izgatja a fantáziámat a Linux CNC.
A gép már mozog ezzel is.
A pinek kiosztását úgy állítottam be, ahogy az a Mach3-ban is van.
Így csak át kell dugni a csatlakozókat egyik gépből a másikba, és minden úgy viselkedik, mint korábban a Mach3 alatt.

Van azonban egy óriási problémám.
A mach3 engedi, hogy saját M kódokat hozzak létre *.m1s kiterjesztéssel.
Ezekkel tudom ki-be kapcsoltatni a reléket úgy, és akkor, ahogy, és amikor szertném.
egy példa:

DoSpinStop()
DeactivateSignal(output2)
ActivateSignal(output2)
DoSpinCW()

Ez leállítja a főorsót, ha forog
Biztonsági okokból kikapcsolja a 2. számú relét
Bekapcsolja a 2. számú relét
Elindítja a főorsót

Meg lehet hasonlóan egyszerű módon oldani ilyen M kódok létrehozását a Linux CNC alatt is?


horcsab | 530    2014-01-16 17:00:00 [3159]

Valaki nem próbálta még, hogy az EMC2 Ethercat verziója működik-e?


svejk | 33043    2014-01-16 12:21:00 [3158]

Őööö... igen a gugliba is írhattam volna, de akkor unatkoznátok.

Köszönöm!

Előzmény: Béni, 2014-01-16 12:13:00 [3157]


Béni | 2076    2014-01-16 12:13:00 [3157]

Igen.

http://www.howtoplaza.com/how-to-change-boot-sequence-or-grub-boot-order-in-ubuntu-10-04

http://pcforum.hu/tudastar/66856/Grub+sorrend+MEGINT.html

Előzmény: svejk, 2014-01-16 11:50:00 [3156]


svejk | 33043    2014-01-16 11:50:00 [3156]

Egy winyóra, XP mellé telepítettem fel a múltkor a LinuxCNC-t.

Most ugye egy Boot menüvel jelentkezik be, majd beavatkozás hiányában indul a LinuxCNC.

Be lehet valahol állítani, hogy az alapértelmezett indulás az XP legyen?


elektron | 15859    2014-01-11 14:49:00 [3155]

Azt hiszem ezt ki fogom próbálni valamelyik kis gépemen hátha hajlandó menni.

Előzmény: Béni, 2014-01-11 14:34:00 [3154]


Béni | 2076    2014-01-11 14:34:00 [3154]

Igen, ezek igen közeli rokonok.

Előzmény: elektron, 2014-01-11 14:31:00 [3153]


elektron | 15859    2014-01-11 14:31:00 [3153]

Puppy Linux EMC2 lehet ez is jó

Előzmény: Béni, 2014-01-11 14:06:00 [3152]

Béni | 2076    2014-01-11 14:06:00 [3152]

Puppy alapú elég kis rendszerigényű:

http://208.109.22.214/puppy/viewtopic.php?t=1964&sid=7e7e4915c633c3a6775502972b415b24

Előzmény: elektron, 2014-01-11 00:39:00 [3147]


elektron | 15859    2014-01-11 12:56:00 [3151]

Csak azért kérdezem,mert TurboCNC DOS verzióban pedig pl. a kör rajzolás lassú, nem tud olyat, hogy a sorokat előre számolva optimalizálja a pálya vezérlési sebességet, az án sajátom amit írtam se tudja még, azk mennek PI el is meg 496-ossal is csak emiatt akarnám, amúgy nincs rá szükségem egyenes szakaszos dolgoknál úgy is megfelelő amit tud. pedig Linuxnak is vannak régi 486 on is futó verziói.

Előzmény: keri, 2014-01-11 12:42:00 [3150]


keri | 14033    2014-01-11 12:42:00 [3150]

~2003 óta.

Előzmény: elektron, 2014-01-11 12:38:00 [3149]


elektron | 15859    2014-01-11 12:38:00 [3149]

Ez a linuxcnc már a régi verziói egyáltalán mióta léteznek ?

Előzmény: bjam28, 2014-01-11 06:37:00 [3148]


bjam28 | 750    2014-01-11 06:37:00 [3148]

Szia !

PII de inkább PIII a minimum!

A késleltetési teszt megmondja, hogy használható-e egy adot lap vagy sem. Az "Első lépések a LinuxCNC-vel" című doksiban van erről több részlet (LinuxCNC.hu-n elérhető).

Jelenleg a 10.04-es Ubuntuval jön a LinuxCNC 2.5.3. Lehet, hogy a régebbi verziók (2.3.x, 2.2.x) kicsit kevesebb vasat igényelnek, akkor a 8.04 vagy akár a 6.06 Ubuntuval is meg lehet próbálkozni. De ezeket már nem nagyon támogatják. Itt találsz hozzájuk CD-image fájlt:
http://linuxcnc.org/index.php/english/download/21?task=view

512MB RAM azért kell neki, bár láttak már embert akinek működött 384MB RAM-mal.

Itt egy lista, az alaplapokról amik működnek, illetve amik tuti nem működnek. Találsz köztük Celeront is.
http://wiki.linuxcnc.org/cgi-bin/wiki.pl?Latency-Test

Előzmény: elektron, 2014-01-11 00:39:00 [3147]


  Fórum főoldal  |  A lap tetejére

Időrend:
Oldal 36 / 99 Ugrás ide:
Sorok:
|◄ Első  ◄ Előző   32  33  34  35  36  37  38  39  40   Következő ►  Utolsó ►|


 ◊