← Terug naar case studies Wetenschappelijk instrument software geval

Software voor het controleren en verwerven van instrumenten voor het onderzoeken van halfgeleiders: betrouwbaarheidstechniek voor een Windows-computersysteem

Een anonieme Sinovanta case die een Qt/C++ Windows-applicatie, multi-device Modbus-temperatuurbeheer, industriële camera-aankrijging en opslag, SQLite-records, geverifieerd apparaat omvat schrijft, en herhaalbare installatielevering.

Betrokkenheid
Audit van bestaande systemen en gerichte softwareopgraderingen
Omvang
Windows-software, apparaatcommunicatie, industriële camera, gegevensopslag en verpakking
Plattform
Windows 10/11 x64, Qt 5.12, C++/MSVC, Modbus RTU en SQLite
Bewijsversie
1.0.3.20260728 Installatie door de klant
01

Context van het project

De bestaande bovencomputer-applicatie coördineerde tien temperatuurbeheerders, sluiterapparaten, een industriële camera, proces scripts en experimentele records. Fielddiagnostics identificeerde discontinuïte temperatuurrecords, stille camera-opslaggappen en preview vertraging, schrijft dat succesvol leek zonder het doel apparaat te veranderen, een Ramp Rate-waarde die wordt weergegeven vóór hardware-opname en inconsistent temperatuurschalen.

02

Ingenieursdoelstelling

Behoud bewezen integraties van apparaten, terwijl de meest risicovolle paden worden geïsoleerd: het maken van de bedieningskritten traceerbaar, het synchroniseren van apparaatparameters in beide richtingen, het herstellen van verwerving en opslag wanneer frames stoppen, het houden van eenheden consistent, het produceren van een herhaalbare Release-installatie, en de overige werkzaamheden op het gebied van de acceptatie van klanthardware defineren.

Betrouwbaarheidswerk over het beheer- en gegevenspad

De upgrade behandelde seriecommunicatie, camera-acquisitie, doorzettingsvermogen, gebruikersinterface-toestand en verpakking als één waarneembare keten. Elke wijziging was gekoppeld aan een mislukte modus en een controleerbaar resultaat.

  1. 01

    Baseline en bewijsmateriaal vastleggen

    Bevriezen van de bron- en installatie basislijn, bekijken van logs en SQLite-records, identificeren van apparaatgrenzen en scheiden van waargenomen veldfouten van veronderstellingen.

  2. 02

    Serial acquisition en parameterslezen

    Houd hoogfrequente PV/SP polling stabiel tijdens het lezen van Ramp Rate register 0x0023 op een laagfrequente schema, één controller elke drie seconden.

  3. 03

    Geverifieerde bediening van het apparaat

    Accepteer een schrijven pas nadat de exacte Modbus 0x06 reactie overeenkomt met de slaaf, register en waarde en de doel SP wordt teruglezen; probeer opnieuw of meld fout anders.

  4. 04

    Recuperatie van de camera-pipeline

    Bewaken van de raw-frame aankomst en aanhoudingsvermogen onafhankelijk, heropenen van de acquisitie na een stilstand van drie seconden, en herplannen van de opslag wanneer frames aankomen, maar geen afbeelding wordt opgeslagen.

  5. 05

    Gegevens- en eenheidsgerechtigheid

    Gebruik een enkele temperatuur-eenheidspad, verwijder de oude factor-of-ten-ongepastheid, bewaar de echte tijdstempels en houd de diagnose beschikbaar voor latere beoordeling.

  6. 06

    Afgifte- en aanvaardingscontrole

    Bouw het x64 Release-pakket, controleer de runtime-afhankelijkheden, registreer bestandsversieën en SHA-256-waarden, behoud rollbackmateriaal en geef een hardware acceptatie-checklist uit.

03

Gecontroleerde leveringen

Targeted source patch
Een 12-bestand patch met Ramp Rate-opname, geverifieerde schrijven, camera-herstel, persistentieplanning en temperatuur-eenheid consistentie.
Installatie door de klant
Versie 1.0.3.20260728 voor Windows x64 met de Qt runtime, SQLite driver, camera SDK, apparaatconfiguratie en VC Runtime.
Architectuur en codebeoordeling
Een overzicht van de bestaande applicatiestructuur, communicatiepaden, gegevensbehandeling en prioritaire P0/P1-risico's.
Ontwerp en verpakkingsregister
Release bouw output, afhankelijkheid inventaris, versie metadata, pakket tellen, en SHA-256 checksums.
Field acceptance checklist
Verwerkingszijdele aflezen, herhaalde schrijfverificatie, cameraanhoudingsvermogen, herverbinding, opslagcontinuïteit en unit-consistentiecontroles.
04

Ingenieursbewijs

Het bewijs hieronder identificeert het artefact, de testomvang en de beperking. Het is geen vervanging voor de acceptatie van hardware door de klant.

Architectuurbeoordeling

83 C++ bron- en headerbestanden; ongeveer 36.200 fysieke lijnen beoordeeld.

De beoordeling identificeerde concrete P0/P1-risico's en eigendomsgrenzen. Het is een statische engineering review, geen software certificering.

Vroeger vrijgegeven velddiagnose

Median camera-frame interval ongeveer 125 ms; 99% bij of onder 130 ms; één interval van 562,921 seconden en één interval van 17,306 seconden; 1.486 opgeslagen afbeeldingen zonder opeenvolgende duplicaten.

Met deze metingen wordt de basislijn van de vorige storing vastgesteld. Ze bewijzen geen uithoudingsvermogen voor versie 1.0.3.

Release build

Build geslaagd; uitvoerbare grootte 1,727,488 bytes; SHA-256 CB4A11624F97BABC892399DF0975059408AA62CA4502622BBEE84D058D2FD5FD.

Dit bevestigt alleen een reproduceerbaar bouwwerk en de gecontroleerde statische beweringen.

Audit van de installateur

78 gestapelde bestanden met een totaal van 66.292.772 bytes; nul Qt Debug DLL's; vereiste Qt, SQLite, camera-SDK, VC Runtime en apparaatbestanden aanwezig.

De installateur SHA-256 is 6908988BF48670AC25A9F004BC77070960AE55D19D35AB51212EBDD64B4321A9. Het pakket is niet getekend.

05

Gevalideerde status

  • Statische bevestigingen gestuurd voor het Ramp Rate-leespad, geverifieerde write/readback-stroom, acquisitie-watchdog, opslag-watchdog en verwijdering van de oude temperatuurschaling.
  • CTest is met succes uitgegaan, maar meldde dat er geen tests werden gevonden; dit is geen functionele testbewijs.
  • ProductVersion, FileVersion, pakketinhoud, vereiste runtime afhankelijkheden en SHA-256-waarden werden gecontroleerd.
  • Versie 1.0.3 was op het klantinstrument op de bewijsdatum niet geïnstalleerd of uitgevoerd; de acceptatie van het apparaat en de uithoudingsvermogen blijft afwachten.
06

Toepassingsgebied en beperkingen

Het gepubliceerde resultaat is een door de klant getest Windows-installatie plus bron, bouw, pakket en statische beoordeling bewijs. Het claimt geen voltooide acceptatie op het terrein, productieondertekening, gecertificeerde meet nauwkeurigheid, ononderbroken lange tijd opslag van camera's of geverifieerde werking op elke controller- en cameracombinatie. De definitieve aanvaarding vereist reële Ramp Rate readback, apparaat-paneel overeenkomst voor herhaalde schrijven, minstens twee uur durende camera zonder onverklaarbare lacunes, ontkoppeling en herverbinding herstel, en temperatuur-eenheidscontroles van het doelinstrument.

Bespreek software voor wetenschappelijke instrumenten

Geef de instrumenttopologie, het apparaatprotocol, het cameramodel, de regels voor het bewaren van gegevens, de besturingssequentie, de bestaande bron of uitvoerbare, de implementatieomgeving en de aanvaardingscriteria.

Zet uw eisen in →