Skip to content

Using with Python

Télécharger

Python SDK

Home I/O peut être utilisé avec Python. Le SDK Python - lien de téléchargement en haut de cette page - vous permet d'écrire des programmes Python pour interagir avec les objets de Home I/O. Cela signifie que vous pouvez lire et écrire sur les points d'E/S des objets à partir de programmes Python. Notez que, pour accéder aux points d'E/S à partir de Python, les objets doivent d'abord être configurés en mode externe (bleu).

L'intégration de Home I/O avec Python a été développée à partir du SDK de Home I/O) et de pythonnet.

Configuration

  • Installez Python à partir de python.org
  • Installez pythonnet en exécutant : pip install pythonnet
  • Dans votre programme, ajoutez une référence à EngineIO (inclus dans le SDK) - voir l'exemple ci-dessous. Pour rappel, les objets que vous souhaitez utiliser dans votre programme doivent être configurés en mode externe.
import time
import clr

clr.AddReference('EngineIO')

from EngineIO import *

print("Home I/O & Python are such good friends thanks to pythonnet!")

livingRoomLight = MemoryMap.Instance.GetBit(0, MemoryType.Output)

for i in range(5):
    livingRoomLight.Value = not livingRoomLight.Value

    # When using a memory value before calling the Update method we are using a cached value.
    print("Light is on? " + str(livingRoomLight.Value))

    # Calling the Update method will write the livingRoomLight.Value to the memory map.
    MemoryMap.Instance.Update()

    time.sleep(1)

# When we no longer need the MemoryMap we should call the Dispose method to release all the allocated resources.
MemoryMap.Instance.Dispose()

print("Bye!")