Esempio: Utilizzo della libreria SL per client AWS IoT Core
Prodotto: CODESYS IIOT Librerie SL
Descrizione
Le AWS IoT Core Client SL Example.project l'esempio mostra come usare AWS IoT Core Client SL libreria.
IL AWSDeviceShadow applicazione mostra come scrivere e leggere il "Device Shadow".
IL AWSPubSub applicazione mostra come utilizzare i blocchi funzione inclusi per pubblicare e sottoscrivere messaggi.
IL AWS_JSON_DeviceShadow applicazione mostra come utilizzare il JSONBuilder per aggiornare il "Device Shadow".
Iniziare
Installazione di un certificato client
Un certificato client viene utilizzato per autenticare un dispositivo su AWS IoT Core. Il certificato client può essere generato tramite l'interfaccia web AWS, scaricato e quindi installato sul dispositivo corrispondente.
Sul controller viene generato un file CSR (Certificate Signing Request). Questo file viene quindi utilizzato per generare un certificato
Per istruzioni su come eseguire questa operazione, vedere la sezione seguente.
Il certificato e la chiave privata vengono creati, scaricati e installati sul dispositivo tramite AWS.
Per ulteriori informazioni, vedere: Import of client certificates with private key
Creazione del certificato con un file CSR
Le CODESYS Security Agent il pacchetto deve essere installato sul computer.
Per ulteriori informazioni, vedere: CODESYS Security Agent
È necessario un account AWS.
Crea un (
Thing) dispositivo inAWS IoT Coretramite l'interfaccia web.Puoi visualizzare e gestire i tuoi (
Things) dispositivi nel pannello laterale di navigazione sottoManage > All Devices > Things.
Nel progetto di esempio aprire il file
AWSPubSubapplicazione.Imposta l'endpoint su
AWSIoTClient.sHostnameingresso.Esempio:
xxxxxxxxxxxxxxx.iot.yyyyyyyy.amazonaws.com)Puoi trovare i tuoi endpoint nel pannello laterale di navigazione sotto
Connect > Domain configurations. Puoi anche creare un nuovo endpoint lì, se necessarioImposta il nome del dispositivo assegnato in precedenza («Name of things») su
AWSIoTClient.sClientIdingresso.Usa il
AWSIoTClient.sCertCNPrefixinput seClientIdè identico al nome host. Ciò impedisce il caricamento di un certificato errato (ad esempio daWebServer).Suggerimento
Se l'input non viene visualizzato, eseguire Reimposta i Pin comando.
Esempio:
sCertCNPrefix := 'AWSClient', sClientId := 'MyHostname';Il "Nome comune" (CN) del certificato è
AWSClient@MyHostnameScarica l'applicazione sul controller e avviala.
L'applicazione tenterà ora di stabilire una connessione crittografata con AWS, ma fallirà a causa del certificato mancante. Tuttavia, questo esperimento di configurazione è rilevante nel seguito.
Imposta il
xEnablebandiera delAWSIoTClientaTRUE.Nell'editor del dispositivo, seleziona il file Involucro PLC categoria.
Specificare i seguenti elementi lì:
cert-getapplistViene visualizzato un componente con il nome e il numero di dispositivo specificati.
Nota: il dispositivo non viene visualizzato se non hai precedentemente tentato di stabilire una connessione ad AWS (Fase 5).
Specificare:
cert-createcsr <number> encoding=Base64Sostituire
<number>con il numero ottenuto al punto 8. La generazione del file CSR può richiedere alcuni secondi.Nell'editor dei dispositivi sotto Registra categoria, dopo la generazione viene emesso un messaggio corrispondente.

Nell'editor dei dispositivi, seleziona File scheda.
Copia il file CSR dal file
cert/exportdirectory al file system locale.
Ora puoi utilizzare il file CSR generato per creare un certificato tramite l'interfaccia web AWS.
Puoi accedere a una panoramica della gestione di tutti i tuoi certificati nel pannello laterale di navigazione tramite
Security > Certificates.Usa il
Add certificate > Create certificatecomando per creare un nuovo certificato con il file CSR esportato.
Scarica il certificato e il certificato principale.
Nel CODESYS, fai clic Visualizza → Schermata di sicurezza comando di menu.
Sotto Certificati propri, installa il certificato del tuo cliente.
Sotto Certificati affidabili, installa il certificato principale.

Clic Online → Ripristina freddo e avviare l'applicazione.
Un nuovo tentativo di connessione da parte di
AWSIoTClientil blocco funzione imposterà ora ilAWSIoTClient.xConnectedToBrokeroutput aTRUE.La connessione viene stabilita correttamente.
Importante
Quando disinstalli un certificato creato tramite CSR da un controller, non funzionerà più se lo reinstalli.
Il motivo è che le informazioni sulla chiave privata vengono rimosse durante la disinstallazione, nel qual caso è necessario creare un nuovo certificato per il dispositivo.
Requisiti di sistema e restrizioni
Sistema di programmazione | CODESYS Development System (versione 3.5.18.0 o superiore) |
Sistema di esecuzione | CODESYS Control Win (versione 3.5.18.0 o superiore) Nota: usa il file gratuito |
Componenti aggiuntivi | - |
Requisiti addizionali | Account AWS (AWS IoT Core) |
Avviso
SCARICA progetti