You are viewing an old version of this page. View the current version.

Compare with Current View Page History

Version 1 Next »

Nettverk

Å koble Arduinoer sammen i nettverk kan gjøre det enklere å få Arduinoene til å samarbeide om å løse en oppgave.

Det finnes flere måter å koble opp i nettverk på. Her presenterer vi en måte som muliggjør kommunikasjon mellom bare to enheter, og en måte som muliggjør kommunikasjon mellom flere enheter.

Ring nettverk (seriell kommunikasjon)

Ved å koble sammen Arduinoene med pinnene som brukes til hardware seriell UART kommunikasjon, pinne 0 og pinne 1, kan vi få lagd en ring med ett vilkårlig antall Arduinoer.

For at Arduinoene skal kunne sende beskjeder til hverandre, må disse beskjedene gå i ring. Vi må da ha en måte å adressere Arduinoene på for at en Arduino skal gjenkjenne at en beskjed er til seg. Hvis den ikke er til seg, skal den bare sende beskjeden videre.

Eksempel på ett veldig enkelt nettverk av denne typen finnes i biblioteket vårt, under PLabExamples/examples/15.PLabInternet/. Alle disse tre kodesnuttene er en del av ett enkelt nettverk. Nettverket består her av 3 Arduinoer, hver med sin unike addresse og oppgave. Arduino_0 har tilkoblet en knapp, som når den trykkes på sender signal via Arduino_1 til Arduino_2 som slår av og på ett lys.

Bluetooth, 1-til-1

I Bluetooth verdenen vi har biblioteker til, er det bare mulig med 1-til-1 kommunikasjon. I teorien kan det lages større nettverk med Bluetooth LE enheter, men det har ikke vi gjort tilgjengelig. Med vanlig Bluetooth er det kun 1-til-1 som er mulig.

Bluetooth

For å få til nettverk med Bluetooth, trenger vi en enhet som kan jobbe som master, og en som er slave. De enhetene som er tilgjengelige er HC-05 og HC-06. HC-05 er den desidert kraftigste av disse, og kan konfigureres til å jobbe som master. Eksempel som setter opp en HC-05 som master og parer den med en HC-06 enhet (eller annen Bluetooth enhet som implementerer SPP og er i slavemodus) er lagt ut under PLabExamples/examples/13.Bluetooth/HC05_Binding.

Etter dette eksempelet er kjørt, vil HC-05 enheten koble rett opp mot enheten den ble paret med med en gang den er nærme nok og den får strøm.

Bluetooth LE

Bluetooth LE trenger egentlig ikke paring, men en enhet må kjøre i central rolle og den andre i peripheral rolle. PLabExamples/examples/13.Bluetooth/HM10_ConnectAndStayConnected er et eksempel som kjøres for den enheten som skal ta central rolle, og får denne til å alltid koble sammen med den andre enheten når den er nærme nok og får strøm.

Etter fast sammenkobling

Når eksempelet er kjørt, og enhetene er koblet sammen, vil de alltid koble seg sammen. Da kan seriell kommunikasjon mellom dem opprettes ved å bruke SoftwareSerial, PLabBTSerial eller PLabBTCallback (mer info om PLabBT* under biblioteksiden). Dette blir da som å behandle data til/fra konsoll.

  • No labels