Efter diverse förseningar så har min Mammut från
CNCDrive.com anlänt. Det tog ca 7 veckor från orederbekräftelse till dess att dom skickade paketet men när det väl gick iväg så kom det fram på 4 dagar. CNCDrive har erbjudit sig att betala tillbaka pengarna när det visade sig att det blev försenat men jag valde att vänta.
Jag kommer att redigera och lägga till i detta inlägg ju mer jag testar. Just nu har jag kört fast så jag tänkte posta det jag sett hittills.
Allmänt.
Försändelsen var bra paketerad med skumplast etc och dom hade skickat med en encoder som plåster på såren för förseningen, antar jag då jag varken beställt, betalat eller visste något om det förrän jag öppnade paketet en trevlig överraskning!
Något som däremot slog mig så fort jag packade upp grejerna var att det mer eller mindre stank någon form av tobaksrök om dom en mindre trevlig överraskning
. Hur som helst, själva konstruktionen, rent fysiskt, är ganska basic:
Vi har en klippt aluminiumplåt, 3mm på vilken kretskortet är monterat och sedan en kåpa av bockad aluminiumplåt. När jag höll enheten i handen så märkte jag att något såg snett ut:
Som synes så är själva kåpan ganska dåligt gjord men det har väl ingen större praktisk betydelse. Vad som däremot har det är hur undersidan på enheten ser ut:
Även denna ger ett ganska dåligt intryck faktiskt. En del av försänkningarna för skruvkskallarna är varken raka eller djupa nog vilket gör att en del av skruvskallarna sticker upp ovanför ytan. Dessutom är monteringshålen inte ordentligt avgradade så när man monterar enheten på en kylfläns får man allt annat än bra termisk kontakt. Enligt databladet så finns det termisk övervaknig som stänger av om/när det blir för varmt men så här ska det väl ändå inte behöva se ut.
En titt under huven då.
Hjärtat och hjärnan i kretsen är, inte helt oväntat, en PIC18F2431. Denna PIC har inbyggd
Motion Feedback Module som tar hand om filtrering och räkning av encoder-pulser i hårdvara samt en 14-bitars PWM modul med justerbar dödtid mm, speciellt designad för motorstyrningar.
Drivningen av MOSFETarna sköts av två IR2184 men jag har inte velat lyfta på kortet för att kolla vilken typ av MOSFET som används då det ser ut att vara lite knöligt kanske senare. Det är i alla fall TO247-kapsel och de sitter monterade med silikongummiduk och kylpasta.
Konfigurering av drivern sker över USB via en USB<->RS232 krets från FTDI, 24V matning, Steg- & Riktning signaler, Fault in/ut samt Reset ansluts via modularjacket och encodern ansluts till skruvplinten som även bär samma Fault in/ut som finns i modularjacket. Tyvärr finns inte stöd för differentiell encoder och "övervakning" av encodern saknas också vilket resulterar i en skenande motor om man "tappar" signalen från encodern.
Flera av lödningarna ser minst sagt tvivelaktiga ut, inte minst den på kondensatorn som sitter över inkommande matning:
Anslutning av matningspänning och motor sker via de M4-skruv som syns på bilden ovan. Av någon anledning har man valt försänkta skruvar med lås- och planbricka på undersidan. Kontaktytan mellan skruvskalle och brickor/kretskort är alltså betydligt mindre än om en skruv med vanlig skalle hade använts. Själva kretskortet ska
enligt uppgift ha 125um kopparfolie och banorna på effektsidan skall vara goda för upp till 80A.
Strömavkänningen är lite annorlunda jämfört med andra lågpris servon. Det vanligaste är att man har sense-motostånd i nedre änden av H-bryggan men här har man istället en hall-givare i övre änden.
Mjukvara.
Mjukvaran var relativt enkel att installera. Bara att ansluta enheten till en USB-port och peka Windows installera ny hårdvara-guide till mappen där drivaren för USB->COM chippet ligger vilken följer med när man laddar ner mjukvaran från CNCDrives web-sida. Därefter behövde man registrera USB-drivaren i systemet genom att köra en fil sedan var det bara att starta konfigureringsprogrammet.
Här är en bild på hela test-setupen:
Tyvärr kom jag inte mycket längre än så här innan jag stötte på problem. Jag knappade in lite grundläggande PID-parametrar och motorn håller emot hyffsat åt ena hållet. Åt andra hållet är den helt kraftlös. Jag testade att jogga den med Mach3 och den går att köra åt ena hållet men inte åt det andra. Det finns ett justerbart gränsvärde för hur många pulser fel det får vara innan servot löser ut och utan matningspänning till motorn så löser den ut när man snurrar axeln åt ena hållet men åt andra hållet kan man snurra hur länge som helst utan att det händer något
Jag är rätt övertygad om att encoder fungerar efterosom detr funkar åt ena hållet och jag har dessutom "tittat på" A- och B-signalen och det verkar riktigt allting.
Jag har mailat CNCDrive och väntar just nu på svar från dom.
Uppdatering 2008-02-24
Då var vi igång igen...
Efter korrspondans med CNCDrive så testade jag att byta encoder till den dom så snällt skickade med och det hela fungerar mycket bättre. Jag ska testa ordentligt med den här encodern och sedan byta tillbaks till den jag hade från början. Det kan vara så enkelt att jag behöver extra pull-up motstånd men det verkar lite konstigt att den fungerad hyffsat i en riktning men inte i den andra. Nånting skumt med den encodern var det i alla fall....
Jag hade även en del problem med mjukvaran. Den hängde sig ibland och den "fyller inte i" textrutorna med den data som den hämtar från servot. Men när jag testade med en annan dator så verkar det också fungera mycket bättre!
Det finns en analysfunktion där man kan testa stegsvaret, alltså hur servot reagerar på ett omedelbart ändrat börvärde. Man knappar in hur många pulser man vill flytta, trycker på
Analyze och programvaran visar hur motorn svarar. Den här funktionen har jag dock fortfarande problem med... Ibland (en gång på fem, kanske) fungerar det alldeles utmärkt, ibland händer det absolut ingenting och ibland får man ett felmedelnade och sedan har programmet tappat kommunikationen med servot. Lite irriterande men det kanske också beror på min dator.
Hur som helst så verkar det i alla fall fungera rätt hyffsat nu! Det är rätt klurigt att få till PID-parametrarna bra och jag har en hel del till att göra på dom innan jag är nöjd.
Detta inlägg kommer att uppdateras när jag har mer info.