Auslesen oder anfahren?
Ich fürchte so langsam muss ich mich doch mal damit beschäftigen.
Beides.
Edit: Aber nicht 0-360° sondern ich glaube -180° bis 180°, aber das ist ja egal.
Zuletzt bearbeitet:
Auslesen oder anfahren?
Ich fürchte so langsam muss ich mich doch mal damit beschäftigen.
ID Widget-Name
200 Krokodil Background
37 Standard Slider1
38 Standard Slider2
6 Batman Slider1
34 Batman Slider2
{
"creationDate": "2020-03-12T10:58:30",
"modificationDate": "2020-07-05T13:12:16",
"name": "Fo(u)r Trains",
"thumbnail": "play-canvas-preview.png",
"paletteLevel": 3
}
{
"Atomic": {
"TabDefinitions": [
{
"Name": "Flow",
"HexColor": "FlowControl"
},
{
"Name": "Sensing",
"HexColor": "Sensor"
},
{
"Name": "Motors",
"HexColor": "Hardware"
},
{
"Name": "SoundAndLight",
"HexColor": "Sound"
},
{
"Name": "Math",
"HexColor": "Variable"
},
{
"Name": "UserSounds",
"HexColor": "UserSound",
"ShowNewSoundBlockButton": true
},
{
"Name": "ModelBlock",
"HexColor": "CompositeBlockPaletteTab",
"ShowNewCompositeBlockButton": true
}
],
"Contents": [
{ "Field": "Category", "Value": "Composite", "Tab": [
{ "Field": "TypeName", "Value": "^Parameter-", "Tab": "ModelBlock" },
{ "Field": "TypeName", "Value": "^StripParameter-", "Tab": "ModelBlock" },
{ "Field": "TypeName", "Value": "^[^/]", "Tab": {"Special": "reverse", "Tab":"ModelBlock" } },
{ "Field": "TypeName", "Value": "^/", "Tab": "ModelBlock" },
{ "Field": "TypeName", "Value": "^/", "Tab": null ,
"$Comment": "Getting the rest of the library blocks out of the equation as soon as possible, to avoid having to load them." }
]
},
{ "Field": "Tag", "Value": "obsolete", "Tab": null },
{ "Field": "Tag", "Value": "Level_3", "Tab": [
{ "Field": "Tag", "Value": "Category_Flow", "Tab": "Flow"},
{ "Field": "Tag", "Value": "Category_Input", "Tab": "Sensing" },
{ "Field": "Tag", "Value": "Category_Motor", "Tab": "Motors"},
{ "Field": "Tag", "Value": "Category_LightAndSound", "Tab": "SoundAndLight"}
]},
{ "Field": "Tag", "Value": "Category_PlayCanvas", "Tab": "Sensing" },
{ "Field": "Tag", "Value": "Category_VM", "Tab": "Motors" },
{ "Field": "Tag", "Value": "Category_Data", "Tab": "Math" },
{ "Field": "Category", "Value": "UserSound", "Tab": {"Special": "reverse", "Tab":"UserSounds" } },
{ "Field": "TypeName", "Value": "^/.*", "Tab": null }
]
},
"AllowCompositeBlockEditing": true
}
{
"widgets": [
{
"widgetId": 200,
"widgetFallbackType": "Generic",
"anchor": "Center",
"position": {
"x": 0.0,
"y": 0.0
},
"safeAreaOverflow": true,
"scalefactor": 1.0
},
{
"widgetId": 37,
"widgetFallbackType": "Generic",
"anchor": "Left",
"position": {
"x": 1.5,
"y": -0.23
},
"scalefactor": 1.0
},
{
"widgetId": 38,
"widgetFallbackType": "Generic",
"anchor": "Right",
"position": {
"x": -1.5,
"y": -0.23
},
"scalefactor": 1.0
},
{
"widgetId": 6,
"widgetFallbackType": "Generic",
"anchor": "Left",
"position": {
"x": 0.23,
"y": -0.23
},
"scalefactor": 1.0
},
{
"widgetId": 34,
"widgetFallbackType": "Generic",
"anchor": "Right",
"position": {
"x": -0.23,
"y": -0.23
},
"scalefactor": 1.0
}
]
}
{
"Version": {
"Major": 1,
"Minor": 3,
"Build": 0,
"Revision": -1
},
"Author": "LEGO Systems A/S",
"ID": "9ea2a273-802f-413c-a956-321811a34dbc",
"Controller": "00000000-0000-0000-0000-000000000000",
"EntryCanvas": "Code",
"IsControllerEditingAllowed": true,
"IsCanvasChangeAllowed": true,
"IsHelpAvailable": true,
"LayoutType": "FreeForm",
"IsPanningAllowed": true,
"Contexts": [
"freeplay"
],
"ColorScheme": "Krokodil"
}
{
"mainCanvas": {
"positionedSequences": [
{
"position": {
"x": -7.25571728,
"y": 5.32938766
},
"PositionedObject": {
"instructions": [
{
"operation": "StartOnEdge",
"literalParams": [
false
],
"blockParams": [
{
"operation": "NotEqualOperator",
"literalParams": [
0.0,
0.0
],
"blockParams": [
{
"operation": "PlayCanvasVariableFetch",
"literalParams": [
6.0
]
},
{
"operation": "LocalVariableFetch",
"literalParams": [
0.0
]
}
]
}
]
},
{
"operation": "MotorPower",
"literalParams": [
1.0,
50.0
],
"blockParams": [
null,
{
"operation": "LocalVariableFetch",
"literalParams": [
0.0
]
}
]
}
]
}
},
{
"position": {
"x": -12.9061995,
"y": 3.25324583
},
"PositionedObject": {
"instructions": [
{
"operation": "Start"
},
{
"operation": "LoopForever",
"innerSequences": [
{
"instructions": [
{
"operation": "LocalVariableStore",
"literalParams": [
1.0,
0.0
],
"blockParams": [
null,
{
"operation": "PlayCanvasVariableFetch",
"literalParams": [
37.0
]
}
]
},
{
"operation": "PlayCanvasVariableStore",
"literalParams": [
37.0,
0.0
],
"blockParams": [
null,
{
"operation": "LocalVariableFetch",
"literalParams": [
1.0
]
}
]
}
]
}
]
}
]
}
},
{
"position": {
"x": -12.8487883,
"y": 1.12870729
},
"PositionedObject": {
"instructions": [
{
"operation": "Start"
},
{
"operation": "LoopForever",
"innerSequences": [
{
"instructions": [
{
"operation": "LocalVariableStore",
"literalParams": [
2.0,
0.0
],
"blockParams": [
null,
{
"operation": "PlayCanvasVariableFetch",
"literalParams": [
38.0
]
}
]
},
{
"operation": "PlayCanvasVariableStore",
"literalParams": [
38.0,
0.0
],
"blockParams": [
null,
{
"operation": "LocalVariableFetch",
"literalParams": [
2.0
]
}
]
}
]
}
]
}
]
}
},
{
"position": {
"x": -12.862483,
"y": -1.0434078
},
"PositionedObject": {
"instructions": [
{
"operation": "Start"
},
{
"operation": "LoopForever",
"innerSequences": [
{
"instructions": [
{
"operation": "LocalVariableStore",
"literalParams": [
3.0,
0.0
],
"blockParams": [
null,
{
"operation": "PlayCanvasVariableFetch",
"literalParams": [
34.0
]
}
]
},
{
"operation": "PlayCanvasVariableStore",
"literalParams": [
34.0,
0.0
],
"blockParams": [
null,
{
"operation": "LocalVariableFetch",
"literalParams": [
3.0
]
}
]
}
]
}
]
}
]
}
},
{
"position": {
"x": -12.9885969,
"y": 5.30995846
},
"PositionedObject": {
"instructions": [
{
"operation": "Start"
},
{
"operation": "LoopForever",
"innerSequences": [
{
"instructions": [
{
"operation": "LocalVariableStore",
"literalParams": [
0.0,
0.0
],
"blockParams": [
null,
{
"operation": "PlayCanvasVariableFetch",
"literalParams": [
6.0
]
}
]
},
{
"operation": "PlayCanvasVariableStore",
"literalParams": [
6.0,
0.0
],
"blockParams": [
null,
{
"operation": "LocalVariableFetch",
"literalParams": [
0.0
]
}
]
}
]
}
]
}
]
}
},
{
"position": {
"x": -7.364051,
"y": 3.29512787
},
"PositionedObject": {
"instructions": [
{
"operation": "StartOnEdge",
"literalParams": [
false
],
"blockParams": [
{
"operation": "NotEqualOperator",
"literalParams": [
0.0,
0.0
],
"blockParams": [
{
"operation": "PlayCanvasVariableFetch",
"literalParams": [
37.0
]
},
{
"operation": "LocalVariableFetch",
"literalParams": [
1.0
]
}
]
}
]
},
{
"operation": "MotorPower",
"literalParams": [
0.0,
50.0
],
"blockParams": [
null,
{
"operation": "LocalVariableFetch",
"literalParams": [
1.0
]
}
]
}
]
}
},
{
"position": {
"x": -7.484421,
"y": 1.20068359
},
"PositionedObject": {
"instructions": [
{
"operation": "StartOnEdge",
"literalParams": [
false
],
"blockParams": [
{
"operation": "NotEqualOperator",
"literalParams": [
0.0,
0.0
],
"blockParams": [
{
"operation": "PlayCanvasVariableFetch",
"literalParams": [
38.0
]
},
{
"operation": "LocalVariableFetch",
"literalParams": [
2.0
]
}
]
}
]
},
{
"operation": "MotorPower",
"literalParams": [
2.0,
50.0
],
"blockParams": [
null,
{
"operation": "LocalVariableFetch",
"literalParams": [
2.0
]
}
]
}
]
}
},
{
"position": {
"x": -7.429586,
"y": -0.877711
},
"PositionedObject": {
"instructions": [
{
"operation": "StartOnEdge",
"literalParams": [
false
],
"blockParams": [
{
"operation": "NotEqualOperator",
"literalParams": [
0.0,
0.0
],
"blockParams": [
{
"operation": "PlayCanvasVariableFetch",
"literalParams": [
34.0
]
},
{
"operation": "LocalVariableFetch",
"literalParams": [
3.0
]
}
]
}
]
},
{
"operation": "MotorPower",
"literalParams": [
2.0,
50.0
],
"blockParams": [
null,
{
"operation": "LocalVariableFetch",
"literalParams": [
3.0
]
}
]
}
]
}
}
],
"positionedDataBlocks": [
{
"position": {
"x": -15.0724144,
"y": 3.12030029
},
"PositionedObject": {
"operation": "PlayCanvasVariableFetch",
"literalParams": [
37.0
]
}
},
{
"position": {
"x": -15.0773125,
"y": 0.959937453
},
"PositionedObject": {
"operation": "PlayCanvasVariableFetch",
"literalParams": [
38.0
]
}
},
{
"position": {
"x": -15.13596,
"y": 5.19512749
},
"PositionedObject": {
"operation": "PlayCanvasVariableFetch",
"literalParams": [
6.0
]
}
},
{
"position": {
"x": -15.0920143,
"y": -1.15005088
},
"PositionedObject": {
"operation": "PlayCanvasVariableFetch",
"literalParams": [
34.0
]
}
},
{
"position": {
"x": -13.9536085,
"y": 3.101902
},
"PositionedObject": {
"operation": "LocalVariableFetch",
"literalParams": [
1.0
]
}
},
{
"position": {
"x": -14.0036573,
"y": 5.1638546
},
"PositionedObject": {
"operation": "LocalVariableFetch",
"literalParams": [
0.0
]
}
},
{
"position": {
"x": -13.9052868,
"y": 0.9963255
},
"PositionedObject": {
"operation": "LocalVariableFetch",
"literalParams": [
2.0
]
}
},
{
"position": {
"x": -13.9034481,
"y": -1.15177417
},
"PositionedObject": {
"operation": "LocalVariableFetch",
"literalParams": [
3.0
]
}
}
],
"positionedCommentBlocks": [],
"viewState": {
"position": {
"x": -9.250492,
"y": -0.0455607958
},
"scale": 5.694741
}
},
"activeStartupCanvases": [
"Play"
],
"autoPlayOnStartup": false
}
Das handy ermöglicht erst den Controller.
Mal ne frage bin am überlegen auf PU upzugraden.
Was brauche ich denn alles dafür um mein Fahrzeug dann mit dem Handy oder mit einen Controller zu steuern?
Kann man das jetzt auf individuelle Fahrzeuge anwenden?
Oder ist PF mit Sbrick besser ?
Das ist OS abhängig. In Android kann man ganz normal wie bei einem USB-Stick auf die Dateien/Ordner zu greifen, iOS ist da wohl restriktiver, habe aber kein iPhone kann das daher nicht genau sagen.
Hallo Michael,
danke für die Idee, geht aber leider nicht:
- das Tablet ist älter, hat keine Dateien-App (iOS 10.x)
- das iPhone ist neuer, hat die Dateien-App, aber auch darin findet man nicht das ganze Datei-System. Da traut Apple ja den Benutzern nichts zu (ja, ist wirklich ein Negativ-Punkt von Apple, alles möglichst "einfach" zu gestalten. Ich bin kein Markengläubiger.)
Ich werde wohl mal in den nächsten Tagen meiner "Wurstfinger" bemühen oder es findet sich noch eine Idee. Ist ja nur "Nice-to-have". Meine Lok wird schon irgendwie fahren.
Edit:
habe das "Programm" nochmal auf dem Telefon erstellt. Es geht schon, ist halt alles sehr klein. "Entwickeln" werde ich wohl weiterhin nur auf dem Tablet, da sieht man einfach mehr.
Thomas