Dataledningar

En dataledning ger dig möjlighet att ange ett indatavärde för ett programmeringsblock genom att använda ett utdatavärde från ett annat block i programmet. På så sätt kan du skapa kommunikation mellan blocken och åstadkomma mer komplexa beteenden för roboten.
Exempel
I det här programmet används en dataledning för att koppla utdatavärdet Ljus från blocket Färgsensor till indatavärdet Styrka i blocket Kör – rattstyrning. På så sätt styrs robotens hastighet av den ljusstyrka som färgsensorn identifierar. Proceduren upprepas i en loop, så att styrkan uppdateras fortlöpande baserat på nya sensoravläsningar.
Tips och trick
Om du provar programmet här ovan på en robot med färgsensorn riktad nedåt mot marken, förändras robotens hastighet när den kör över olika färger.
Typer av dataledningar
Dataledningar överför värden mellan olika block. Varje dataledning är av en viss typ, som avgörs av utdatatypen hos blocket där ledningen börjar. Typen är identisk med den värdetyp som dataledningen överför. Mer information om de olika typerna finns under Datatyper.

Dataledningar samt in- och utdata för blocken ser olika ut beroende på typ, som framgår av tabellen nedan.
TypIndata för blockUtdata för blockUtdataledning för block
Logik
Numerisk
Text
Numerisk vektor
Logisk vektor
Skapa en dataledning
Om du vill skapa en dataledning drar du från utgången på ett programmeringsblock till ingången på ett annat programmeringsblock, såsom visas i stegen nedan.
StegÅtgärdExempel
1Starta vid en block-utgång
2Dra från vänster till höger
3Sluta vid en block-ingång
Tips och trick
Blocket med utgången (där dataledningen börjar) måste finnas före blocket med ingången (där dataledningen slutar) i programmet.
Block-utgången och block-ingången måste ha samma datatyp eller vara kompatibla för konvertering av dataledningar.
En dataledning ersätter ett indatavärde som matats in direkt i blocket. I exemplet ovan ersätts indatavärdet 50 för Styrka av dataledningen. Blocket Kör – rattstyrning får nu indatavärdet Styrka från dataledningen.
Ta bort en dataledning
Om du vill ta bort en dataledning klickar du på block-ingången där dataledningen slutar. Dataledningen tas bort, och det indatavärde som matades in direkt i blocket återställs. Klicka på blocket igen om du vill ange ett nytt indatavärde.
Använda en block-utgång för flera dataledningar
Du kan använda en block-utgång som startpunkt för fler än en dataledning, såsom visas på bilden nedan. Om du vill använda en utgång igen drar du helt enkelt en ny dataledning.
Tips och trick
Du kan inte ansluta flera dataledningar till samma hubb.
Konvertering av dataledningar
En dataledning måste koppla samman en block-utgång och en block-ingång av samma typ, eller så måste typerna vara kompatibla för någon av de tillåtna automatiska konverteringar som visas nedan.
Från-typTill-typResultat
Logik NumeriskFalskt = 0
Sant = 1
Logik TextFalskt = ”0”
Sant = ”1”
Logik Logisk vektorVektor med ett element
Logik Numerisk vektorVektor med ett element (0 eller 1)
Numerisk TextText som ersätter siffran
(Till exempel ”3,5”)
Numerisk Numerisk vektorVektor med ett element
Logisk vektor Numerisk vektorVektor av samma storlek med 0 eller 1 element
Visa dataledningsvärden
Om EV3-enheten är ansluten till din dator (via USB, Bluetooth eller Wi-Fi) när ett program körs, kan du visa värdet för en dataledning medan programmet körs. Om du vill visa värdet för en dataledning placerar du bara muspekaren över dataledningen. Värdet visas i ett litet fönster intill dataledningen.
Exempel
I programmet nedan har dataledningen värdet 30 vid tidpunkten då bilden togs. I det här exemplet kan dataledningens värde förändras varje gång blocket Färgsensor körs, eftersom blocken ingår i en loop. Displayen uppdateras fortlöpande så att det senaste värdet alltid visas.
Tips och trick
Genom att visa dataledningsvärden kan du förstå bättre hur ditt program fungerar. Om du letar efter värden som avviker från vad du förväntat dig kan du lättare hitta orsaken till ett problem i programmet. Om du till exempel skapar programmet ovan men av misstag råkar använda läget Mäta – färg på färgsensorn i stället för läget Mäta – reflekterad ljusstyrka, visar dataledningen bara värden i intervallet 0–7 i stället för det förväntade intervallet 0–100 (se Använda färgsensorn).
Dataledningar
Snabblänkar