Calmon Stegmotorteknik AB
Detalj av filterkåpa till storköksventilation

System för stor­köks­vent­ilat­ion

Acticon ut­veck­lar och säl­jer kre­ati­va pro­dukt­er för vent­il­at­ion. Ett pro­dukt­om­råde är stor­köks­vent­il­at­ion. Calmon har an­svar­at för ut­veck­ling­en av de­ras sy­stem för fett och lukt­re­dukt­ion med UV-ljus och ozon.

Läs mer
FEM, optisk givare och detalj av kretskort

Fler ut­man­ing­ar vi löst

Genom åren har vi tagit oss an och löst många ut­man­ing­ar. Hög­prest­er­ande steg­motor­styr­ning­ar och andra mo­tor­styr­ning­ar. Kraft­elekt­ro­nik, el­säker­het och EMC. In­dust­ri­ell elekt­ro­nik ofta med sen­sor­sy­stem. Vi hjäl­per dig.

Läs mer

Mjukvaru­konstruktion

Kod, flödesschema och en mikroprocessor på kretskort

En ökande del av produkt­ers funktion­alitet imple­ment­eras i mjuk­vara. Vid utveck­ling av program­vara nära mekatronik blir det uppen­bart att ett gräns­över­skridande agilt upplägg krävs. Det räcker inte att mjuk­varan är agil om ändringar i mekatroniken raserar det agila upplägget.

Lika uppenbart är det att ett genom­tänkt koncept för att hantera mekatronikens krav på realtid och tids­riktighet behövs. Hjälp­medel för program­utveckling som bibehåller timingen mellan mjukvara och mekatronik vid veri­fiering och fel­sökning behövs också.

Gränsöverskridande och agil process

Grunden för en agil process är starka och smart valda gränssnitt. När mjukvara är nära integrerad med mekatronik måste gränssnitten i mjukvaran spegla elektronikens och mekanikens fysiska och funktionella gränssnitt. Utan denna samklang kan förändringar i mekatroniken skapa kaos i mjukvaran. Fysikens lagar och erfarenheter från tidigare designer är nyckeln till att välja gränssnitten så att helheten blir agilare utan att kompexiteten ökar.

En systemdesign där mekatroniken konstrueras med förutsättningen att mjukvaran ska kunna justera hårdvarans funktionalitet kommer göra hela produkten agilare. Detta agila upplägg använder vi oberoende om vi skriver kod i C eller C++.

Nära utveckling

Att programmering, utveckling av elektronik, motorstyrning och mekatronik görs av ett team som arbetar nära varandra skapar förutsättningar för en bra utvecklingsprocess och en vinnande produkt. På Calmon har vi gått ett steg längre, alla våra konsulter har kompetens inom alla disciplinerna. För flertalet projekt konsturerar därför samma konsult både programvaran och elektroniken samt deltar i arbetet med mekaniken. Resultatet blir enklare kommunikation och ökad flexibilitet.

När programmeraren har förståelse och ansvar för helheten löses systemansvaret elegant. Det blir naturligt att se till helheten. Gränsöverskridande funktioner utvecklas enklare, det komplexa periferisystemet i dagens kraftfulla CPU:er kan utnyttjas optimalt för att förenkla för elektronik och mekanik. Det blir möjligt att skapa starka gränssnitt som håller för de förändringar som dagens produkter genomgår under sin livstid.

Vårt koncept med konsulting i egna lokaler gör att våra konsulter fortsätter att vara tillgängliga även efter projektavslut. Som kund har du alltid nära till din programmerare, du äventyrar inte din investering i mjukvaran. Våra konsulter förblir nära kunden.

Debug av realtidssystem med oscilloskop och realtidsanalys

Realtid på riktigt

Att debugga mekatroniksystem med singelstegning och brytpunkter leder sällan framåt. Att stoppa tiden, så mekaniken stannar, är inte möjligt. Här krävs andra metoder. Vi testar och debuggar med oscilloskop och med våra specialinstrument för rörelseanalys och realtidsanalys. Avlusning av hela mekatroniksystemet, med verkliga insignaler, görs på ett effektivt sätt. Både funktionella fel och timingfel i mjukvaran, elektroniken och mekaniken upptäcks och rättas enklare.

I vårt arbete med motorstyrningar har vi lärt oss att ha koll på nanosekunder. Vi har läst det finstilta i CPU:ns manual, vi har full förståelse för hur timrar, AD-omvandlare, interrupthantering, DMA-system och andra periferienheter fungerar och styrs. Vi vet hur mjukvarans timing och databehandling påverkar signalintegritet när noggranna mätningar ska göras i kraftelektroniska kretsar. Vi vet hur program skrivs både strukturerat och tidseffektivt. Vi låter RTOS samexistera med högfrekventa timerinterrupt. Processer som körs utanför operativsystemet låter vi strukturerat kommunicera med de som körs av operativsystemet.

Våra verktyg och kodbas

Får vi själva välja så arbetar vi med kraftfulla 32-bitars ARM CPU:er, i första hand ur STM familjen. Dessa har vi arbetat med sen 2008. Dessa CPU:er är mycket kostnadseffektiva både med hänsyn till komponentkostnad och utvecklingskostnad. Vi har effektiva verktyg för samtliga Cortex-M CPU:er, men är också vana att arbeta med många andra CPU:er och kompilatorer. Vi versionshanterar all mjukvara antingen direkt i kundernas system eller i vårat eget.

Vår kodbas innehåller kod för motorstyrning men också för många olika kommunikationsprotokoll, signalbehandling, grafikbliotek, loggning, debugginterface m.m. Allt skrivet skalbart och stora delar CPU-oberoende. Klart att användas både i ”snålkodade” och större system. Dra nytta av vår erfarenhet, våra verktyg och redan skriven kod.

PC-program

Även om vi huvudsakligen skriver kod för inbyggda system så har vi kompetens inom PC-programmering. I huvudsak använder vi denna när vi gör program för styrning, konfigurering och testning av inbyggda system. Vi har även PC-program för styrning av vår motormätbänk som vi själva underhåller och utvecklar.