SOFTWARE DEVELOPMENT
Compolab è in grado di fornire soluzioni software complete in ambito specific purpose (embedded) e general purpose o soluzione complete di Automazione industriale
Set di Competenze
Linguaggi di programmazione
C#, C++, C, SQL, Ladder, Javascript, TypeScript, HTML, CSS, Java, Python, Visual Basic.
Ambienti di sviluppo integrato (IDE)
Visual Studio 2022/Code, Eclipse, STM32CubeIDE, CCStudio, Atmel Studio, Android studio, IntelljIdea, Server Management Studio (SSMS), MYSQLWorkbench, Tia Portal, Saia PG5.
Frameworks
.NET, Android SDK, Unity 3D, Angular 1.x/2.x, Entity Framework, Hibernate, NHibernate, Xamarin/MAUI.
Software di vario utilizzo
Microsoft Office, Programmi di Grafica ( Photoshop, GIMP, InkScape…), CAD Elettrico
(EPLAN, SPAC, OrCad, KiCad), Programmi di analisi dati (Octave / Matlab), Teleassistenza
(Anydesk,Teamviewer,Supremo, RDP, VLC), Slicers per Stampa 3D
Database
Sql server, MySQL, Postgres, Redis, DB2, DB2/AS400
Conoscenze di SQL: Store procedures, Functions, Query select, update, delete, Backup/restore, DBA – utenti, gruppi, ruoli…
Conoscenze Hardware
Workstation e Servers x86/x64, STM32, ESP32, TiVa TM4C, Raspberry, Arm64 (Android + bare metal), Atmel (su framework Arduino), AS400; Apparati di rete: IP routers, Switch Managed, firewalls, modems ADSL…
Sistemi operativi
Windows 7/8/10/11, Windows Server 2008/2012/2016/2019/2022, Linux Ubuntu/Debian,
Raspbian, Yocto
Protocolli di rete
Socket programming a basso livello con tecniche custom e fine tuning dei parametri (TCP, UDP), FTP, SSH, http, SSL, RDP, RTSP. Trasporto radio: Zigbee, Wifi, Bluetooth, BLE, DVB-TS.
Tipologia di applicazioni
Sviluppo di HTTP Server: ASP .NET, WCF, Socket a basso livello + HTTP parsing, Java
Servlet…
Sviluppo di applicazioni Desktop per Windows in WinForm, Console, Blazor WebAssembly
Applicazioni per l’industria 4.0: Modbus TCP/RTU, CSV+FTP, CSV+SMB, Profinet S7
Conoscenza di design patterns: multithread (thread, queue, semafori…), ricorsione, MVC,
MVVC,ORM…
Manipolazione grafica di immagini: OpenCV, AI – Yolo, OpenGL
Sistemi cognitivi di visione artificiale: Cognex, Keyence, altri basati su custom open source
App Android anche pubblicate sullo store: interazione bluetooth, wifi, api restfull, kiosk, …
Applicazioni VBA per office Automation: macro Excel, Word, PowerApps
Applicazioni su Cloud: Azure, AWS IoT
Applicazioni AR,VR: Oculus, Hololens su Unity 3D, custom su web services
Sviluppo di algoritmi custom di elaborazione numerica di dati ed immagini performanti.
Applicazioni a basso livello su STM32: applicazioni realtime bare metal, multithread su
FREERTOS, lettura ADC fino a 3Mhz, comunicazioni seriali RS232/RS422/RS485 fino a
12Mbit/s, SPI, I²C, CAN, Ethernet 10/100 Mbit, WiFi/Bluetooth (ESP32, BlueNRG, etc),
Automazione Industriale: programmazione PLC Siemens S7 (Tia Portal), Honeywell Saia
(PG5), altri minori; lettura sensori e comunicazioni con bus di campo, attuatori, inverters,
celle di carico, etc…. Progettazione di software per macchine industriali ed impianti chimici.
Prodotti sviluppati e manutenuti
- Sistema di Misurazione, Conteggio, Oggettivazione pelli COMP-EYE-V2: 17 prodotti
- Bilancia Contapelli: 4 prodotti
- Pulsantiere Wireless: 20 prodotti
- Bilance per prodotti chimici MODBUS RTU/TCP: 2 prodotti
- Automazione impianti chimici: 2 impianti
- Macchine industriali speciali: 30+ macchine
Composizione del Team
- 1 Senior PM/Coder
- 5 Senior Coders
- 2 Junior Coders
- 3 Tecnici installatori, manutentori, formatori
Sistemi di Specific Purpose
- Conoscenza di schede a microcontrollore come Arduino (AVR), Nucleo (ST) e schede Microchip nonché sistemi compatti come il NI cRIO.
- Progettazione di schede custom con hardware dedicato con sensori collegati su SPI, I²C, GPI, etc.
- Uso di IDE specifici quali Arduino IDE e Atmel Studio (IDP) e di linguaggi C / C++
- Pubblicazione dei dati su piattaforme cloud quali MQTT
Sistemi di General Purpose
- Programmazione di PLC e HMI Siemens e altri produttori, PC industriali o mini PC
- Interfacciamento con sensori, interruttori, pulsanti, sistemi di visione, attuatori, etc
- Progettazione, programmazione e realizzazione di impianti e macchine con PLC e PC Industriali anche in ottica Industria 4.0
- Conoscenza di linguaggi Java / C# / C / C++ , Ladder o MATLAB su piattaforme Windows, Linux, Android
Automazione Industriale
- Progettazione e realizzazione di soluzioni in ambito dell’automazione industriale, con particolare esperienza di software per robot antropomorfi Yaskawa nel linguaggio INFORM ed in C++.
- Utilizzo dei più moderni strumenti di visione computerizzata 2D e 3D basati su laser e telecamere specializzate quali Cognex