Hållbar utveckling – hållbara företag

Tillverkning, distribution och användningen av olika typer av produkter står för en stor andel av världens utsläpp, utnyttjande av ändliga naturtillgångar och bidrar till en negativ och destruktiv klimatpåverkan.
Vad kan ett varumärke eller företag göra för att bli ett mer hållbart företag?
Hur kan man som företag jobba med hållbar utveckling?
På denna sida kommer ett antal konkreta exempel presenteras.

FN prisar Apples satsning på förnybar energi

Apple är ett företag som under många år stått för en betydande del av världens utsläpp. Många av företagets produkter har medvetet designats, konstruerats och tillverkats på ett sätt som försvårat möjligheten att reparera och laga dem.
Efter massiv kritik från upprörda konsumenter världen över, och ett flertal kostsamma och långdragna juridiska tvister, har företaget på senare år styrt om till ett mer hållbart företagande ur ett miljö- och klimatperspektiv.

Det Apple lyckats åstadkomma inom ramen för sina miljösatsningar, och anledningen till att de nu alltså uppmärksammats av FN, är följande:

  • Minskat sina koldioxidutsläpp med 35% de senaste tre åren.
  • Bytt till 100% förnybar energi i sina kontor, butiker och serverhallar i 43 länder.
  • Minskat den genomsnittliga energianvändningen med 70% fördelat över företagets huvudsakliga produktsortiment.
  • Apple har också inlett samarbete med Conservation International för att skydda och återskapa ett 11000 hektar stort saltvattenrikt skogsområde i Colombia som beräknas kunna suga upp 1 miljon ton koldioxid (CO2) under projektets livstid.

Läs mer om Apples pris i artikeln i 9to5mac: Apple wins United Nations award for use of 100% renewable energy and more, av Ben Lovejoy, sep. 26th 2019



Spelprogrammering med Unity – create with code

Här är instruktioner för att komma igång med spelprogrammering i Unity. Programmeringsspråket är C#, men utvecklingsmiljön i Unity erbjuder en hel del funktionalitet som möjliggör spelutveckling utan krav på djupa förkunskaper inom programmering.

Kurs-webbplats på Unity

Lesson Plans Unity Create With Code

Länk till Project 1 assets

Första lektionsuppgiften
Exempel på uppdrag från kursen

Hoppspel

Hackathon med WeChange och H&M

Introduktion till Hackathon med WeChange och H&M.

Dagens lektion kommer handla om:
Vad är ett Hackathon?
Vad är Cirkulär Ekonomi?
Läsa igenom handledningen HM Handledning Hackathon 2019
Svara sedan på frågorna nedan.

  1. Vad är ett Hackathon?
  2. Vilka framtidsutmaningar står H&M inför?
  3. Varför vill H&M köra detta Hackathon med oss?
  4. Varför behövs cirkulär ekonomi?
  5. Vad betyder begreppet cirkulär ekonomi?
  6. Vad innebär Nudging?
  7. Ge några exempel på Nudging.
  8. Vilka framgångsfaktorer är viktiga för att man ska lyckas med ett beteendeförändringsarbete?
  9. Diskussionsfråga om etik. Är det etiskt ok att manipulera vårt handlande/agerande utan att vi själva är medvetna om det? Finns det lägen när det är ok och andra lägen det inte är det? Vad tror du själv är mest beteendeförändrande? Svara på frågorna enskilt först, så ska vi diskutera det i grupp sedan.

Exempel på utmaningar att fundera på inför Hackathon med H&M:

  • Tillverka och sälja färre kläder!
  • Skapa nya inkomstkällor för modeföretagen. Vad ska H&M tjäna pengar på?
  • Nya erbjudanden och upplevelser i butikerna.
  • Få konsumenterna att köpa färre kläder.
  • Få tillverkarna och konsumenterna att välja bättre kvalitet så att kläderna håller längre.
  • Tillverka lokalt mha ny teknologi.
  • Använda nya biologiska och ekologiska material
  • Utveckla nya mer hållbara innovativa tillverkningsmetoder
  • Sluta med/minska användningen av gifter.
  • Uppmuntra till att lappa och laga (remake, redesign, restyle) istället för att slänga och köpa nytt.
  • Byta kläder med varandra, få folk att köpa begagnat. Socialt och kulturellt accepterat, trendigt, modernt smart mode.
  • Spåra klädernas användning. Hur gör vi det? Med teknik och digitala tjänster.
  • Miljö- och klimatavtrycksmärka kläderna. 
  • Materialåtervinna lokalt
  • Komma på nya användningsområden för förbrukade textilier.
  • Konsument-communities


Andningen påverkar din hjärna

I nedanstående artikel från Quartz kan vi läsa om hur forskare identifierat vad som händer i vår hjärna under djupandning.

Neuroscientists have identified how exactly a deep breath changes your mind

By Moran Cerf, November 19, 2017, Kellogg School of Management, Northwestern University

Breathing is traditionally thought of as an automatic process driven by the brainstem—the part of the brain controlling such life-sustaining functions as heartbeat and sleeping patterns. But new and unique research, involving recordings made directly from within the brains of humans undergoing neurosurgery, shows that breathing can also change your brain.

Simply put, changes in breathing—for example, breathing at different paces or paying careful attention to the breaths—were shown to engage different parts of the brain.

Humans’ ability to control and regulate their brain is unique: e.g., controlling emotions, deciding to stay awake despite being tired, or suppressing thoughts. These abilities are not trivial, nor do humans share them with many animals. Breathing is similar: animals do not alter their breathing speed volitionally; their breathing normally only changes in response to running, resting, etc. Questions that have baffled scientists in this context are: why are humans capable of volitionally regulating their breathing, and how do we gain access to parts of our brain that are not normally under our conscious control. Additionally, is there any benefit in our ability to access and control parts of our brain that are typically inaccessible? Given that many therapies—Cognitive Behavioral Therapy, trauma therapy, or various types of spiritual exercises—involve focusing and regulating breathing, does controlling inhaling and exhaling have any profound effect on behavior?

This recent study finally answers these questions by showing that volitionally controlling our respirational, even merely focusing on one’s breathing, yield additional access and synchrony between brain areas. This understanding may lead to greater control, focus, calmness, and emotional control.

The study, conducted by my post-doctoral researcher, Dr. Jose Herrero, in collaboration with Dr. Ashesh Mehta, a renowned neurosurgeon at NorthShore University Hospital in Long Island, began by observing brain activity when patients were breathing normally. Next, the patients were given a simple task to distract them: clicking a button when circles appeared on the computer screen. This allowed Dr. Herrero to observe what was happening when people breath naturally and do not focus on their breathing. After this, the patients were told to consciously increase the pace of breathing and to count their breaths. When breathing changed with the exercises, the brain changed as well. Essentially, the breathing manipulation activated different parts of the brain, with some overlap in the sites involved in automatic and intentional breathing.

The findings provide neural support for advice individuals have been given for millennia: during times of stress, or when heightened concentration is needed, focusing on one’s breathing or doing breathing exercises can indeed change the brain. This has potential application to individuals in a variety of professions that require extreme focus and agility. Athletes, for example, have long been known to utilize breathing to improve their performance. Now, this research puts science behind that practice.

Beyond studying the ability of humans to control and regulate their neural activity volitionally, the study was also unique in that it utilized a rare method of neural research: directly looking inside the brains of awake and alert humans. Typical neuroscience studies involving humans use imaging techniques (i.e. fMRI or EEG) to infer the neural activity in people’s brain from outside the skull. But studies involving electrodes implanted in humans’ brains are rare. The ability to look inside the humans’ brains allows us to study thinking, deciding and even imagining or dreaming by directly observing the brain. The study subjects in our work were patients who had electrodes implanted in their brain as part of a clinical treatment for epilepsy. These patients were experiencing seizures that could not be controlled by medication and therefore required surgical interventions to detect the seizure focus for future resection.

Given that detection requires the patient to have a spontaneous seizure in order to identify the exact seizure onset location, which can take days, the patients are kept in the hospital with electrodes continuously monitoring their brain activity.

The research findings show that the advice to “take a deep breath” may not just be a cliché. Exercises involving volitional breathing appear to alter the connectivity between parts of the brain and allow access to internal sites that normally are inaccessible to us. Further investigation will now gradually monitor what such access to parts of our psyche that are normally hidden can reveal.

Reebok: Spring fort som fan – få ett par skor

Avancerad teknik möjliggjorde en uppmärksammad och lyckad reklamkampanj som stärkte Reeboks varumärke.

Läs artikeln på Resumé.

Lördagens event på Drottninggatan krävde ditt snabbaste jag. De som lyckades tilldelades ett par skor från Reebok. Se Animals nya kampanj här.

Under helgen byggde Reebok och reklambyrån Animal upp en specialbyggd utomhustavla på Drottninggatan i Stockholm där de uppmuntrade folk att göra ett snabbhetstest. Alla som sprang snabbare än 17 kilometer i timmen låste upp luckorna i tavlan och fick hämta ut den nya Reebok-modellen ZPump 2.0. Löpningen mättes med en inbyggd hastighetskamera.

Bakom den livfulla kampanjen står Animal, som även är skapare till TrumpDonald.org, som blev en succé världen över. Den tekniska lösningen konstruerades, byggdes och installerades av Niclas Ekholm på IKT-Labbet.

– Vi gillar tanken på att ta en klassisk annonsyta och förvandla den till något unikt och uppseendeväckande. Det här blir en direkt upplevelse för människorna, samtidigt som Reebok kan ge dem något av stort värde, säger Markus Schramm, creative på reklambyrån Animal, i en kommentar.

– För oss på Reebok är det viktigt att göra saker på riktigt och verkligen aktivera vår målgrupp. Vi vill inspirera människor till att springa och testa sina gränser, även när de inte är på gymmet. Det är vad vår tagline Be More Human verkligen handlar om.

dsfds
ZPump 2.0 Speed Cam – reklamkampanj för Reebok på Drottninggatan i Stockholm

MiniBit Entry-Level Robot for Microbit

Overview

MiniBit is a ready-assembled simple and inexpensive robot for the BBC micro:bit.

It has the following features:

  • Ready-assembled*. Just push on the wheels
  • Edge connector to easily insert the Microbit
  • Micro metal gear motors with fully-enclosed gearbox (no grit or fluff can enter)
  • Wire-free battery holder for 3 x AA batteries
  • 4 x Smart RGB LEDs (neopixel compatible)
  • Integrated Pen holder for 10mm diameter pens (eg. Sharpie felt tips)
  • Robust On/Off switch with Blue indicator LED
  • Wide chunky wheels with lots of grip
  • Metal ball front caster
  • Connector for optional ultrasonic sensor or I2C breakouts (fully compatible with Pimoroni’s Breakout Garden range)
  • The Microbit pins 0, 1, 2, Gnd and 3V are available for use with croc clips etc.
  • Lots of mounting holes to create your own “body” for the robot or additional sensors etc.
  • Makecode extension and micropython examples available

* Wheels need pushing on and optional pen-holder needs screwing in if purchased

Assembly Instructions

  1. Push on the wheels
  2. If you have the pen holder, then use 2 screws to screw the two pillars into the main board from the bottom, then use the remaining 2 screws to screw the top holder into the pillars

Coding Your MiniBit

Microsoft MakeCode

Click any image to enlarge.

To load the extension, select Advanced, then Extensions. Then enter “Minibit” into the search box and press Enter. If that doesn’t find it (there are sometimes earch glitches) you can enter the full URL into the search box: “https://github.com/4tronix/MiniBit”

Once loaded, you will have a MiniBit menu item with 4 sub-folders:

Motor Blocks

The first command “Drive at speed 600” will set both motors to speed 600. If you do nothing more, the MinBit will continue going forward forever.

The speed value can be from -1023 (full speed reverse) to 1023 (full speed forward). Setting the speed to 0 will stop the motors

There is also a block for spinning – left motor and right motor turn at the same speed but in opposite directions.

Both the drive and spin blocks have a paired block that will drive (or spin) for a selected amopunt of time and then stop

There are two ways of stopping. Coasting to a stop or braking. If you set the speed to 0 or use the “stop with no brake” command, then it will stop gently over the coourse of a second or so 9depending on initial speed). If you use the “stop with brake” block (or the drive/spin for a time block) then it will stop almost immediately.

Finally, you can drive each motor individually. For instance if you set the left motor to drive at 600 and the right motor to drive at 1000, then it will perform an arc towards the left

LED Blocks

You can use these blocks to set and clear one or all the LEDs.

Note that the MiniBit defaults to automatically updating the LEDs whenever any change is made see the “more…” section to learn how and why to change this behaviour

The LEDs on the MiniBit are labelled from 0 to 3. Use these numbers in the Makecode blocks to change the colour. eg setting LED 1 to Purple could be done like this:

The default brightness level is 40. This is plenty bright enough for most uses, saves damaging eyes, and reduces battery consumption. If required you can change the brightness from 0 up to 255

Sensor Blocks

Only one sensor in here; the ultrasonic distance sensor. You can get the values to the nearest object in cm, inches or microseconds

More Blocks

These are the advanced usage blocks. Most students will not need to use them.

  • Set update mode is used to switch between automatic LED updates or manual LED updates. The default is for automatic updates: every change to the LEDs results in all the LEDs being written to with the updated values. This is easy to understand, but it does mean that when making a lot of changes it can slow things down considerably. If doing that, it is best to use Manual update mode, make all the changes required, then use the show LED changes block to make all the updates in one go.
  • Rotate LEDs block will move the colour in LED 0 to LED 1, LED1 to LED2, LED2 to LED3 and LED3 to LED0. If done repeatedly, with a delay between each one, it will show the lED colours rotating around all the 4 LEDs.
  • Shift LEDs block will move LED0 to LED1, LED1 to LED2 and LED2 to LED3. It will blank LED0. So all the colours will disappear one at a time from 0 to 3
  • You can also create your own colours and replace the fixed list of colours in any command using the convert from red, green, blue block. For example, to set LED0 to a blue-green colour:

Programming in microPython

Driving Motors

The motors use 2 pins each to determine the speed and direction. In microPython we use write_analog ( ) to set the first pin to a value between 0 and 1023 and the second pin to 0 in order to go forward. To reverse, we swap the pins so that the first pin is set to 0 and the second pin is set to the value.

On the MiniBit the left motor uses pins 12 and 8, and the right motor uses pins 16 and 14.

So to move the left motor forwards at speed 600:

pin12.write_analog(600)
pin8.write_digital(0)

And to move the right motor in reverse at speed 450:

pin16.write_digital(0)
pin14.write_analog(450)

To stop with no brake, use write_digital ( ) to set both pins to 0. To stop with brake, set both pins to 1.
eg. stop left motor with coasting and right motor with brake:

pin12.write_digital(0)
pin8.write_digital(0)

pin16.write_digital(1)
pin14.write_digital(1)

So a complete, but fairly useless, program to drive the motors for 2 seconds and then stop quickly, would look like this:

from microbit import *
pin12.write_analog(600)
pin8.write_digital(0)
pin16.write_analog(600)
pin14.write_digital(0)
sleep(2000)
pin12.write_analog(0) # temporary fix for python bug
pin12.write_digital(1)
pin8.write_digital(1)
pin16.write_analog(0) # temporary fix for python bug
pin16.write_digital(1)
pin14.write_digital(1)

Note the 2 lines that write_analog(0) before swapping a pin from analog to digital. These are required until a fix is obtained for the python PWM driver continually updating the pin type to analog

Lighting the LEDs

This uses the standard neopixel code, with the LEDs connected to Pin 13.

At the top of your program add import neopixel then:

leds = neopixel.NeoPixel(13, 4)

leds is then an array of all 4 LEDs. leds[0] refers to the LED 0 and leds[3] refers to LED3. Each element of the array is a set of 3 numbers representing the Red, Green and Blue values (each 0..255) for that LED. So to set LED2 to Blue:

leds[2] = (0, 0, 255)

All this does is update the array. To show the new value of the array, we need to call the show ( ) function as follows:

leds.show ( )

Reading the Ultrasonic Distance Sensor

The ultrasonic sensor breakout is on pin15.

The concept is simple: send an ultrasonic pulse out, then time how long it takes to return. Using the speed of sound and some maths, we can then work out the distance. The following complete program has 2 parts to it: a function sonar ( ) which returns the distance to the object, and the main code in a loop which continually prints the distance. We also need to import the utime library:

from microbit import *
from utime import ticks_us, sleep_us

def sonar():
    pin15.write_digital(1) # Send 10us Ping pulse
    sleep_us(10)
    pin15.write_digital(0)
    pin15.set_pull(pin15, NO_PULL)
while pin15.read_digital() == 0: # ensure Ping pulse has cleared
        pass
    start = ticks_us() # define starting time
    while pin15.read_digital() == 1: # wait for Echo pulse to return
        pass
    end = ticks_us() # define ending time
    echo = end-start
    distance = int(0.01715 * echo) # Calculate cm distance
    return distance

while True:
    display.scroll(sonar())
    sleep(1000)

Skiss, teckning och ritningar

http://www.iktlabbet.se/wp-content/uploads/2019/10/skiss-teckning-ritning-Konstruktionsritning.pdf

Skiss, (från grekiska schedios – schediazo) betyder hastigt gjord, nonchalant – att göra något på rak arm. (Wikipedia.se)

Används till: Ofärdig teckning, prova på former, funktioner, storlekar – idéutveckling

Teckning är en form av bildligt uttryck och är en av de största formerna inom bildkonst. (Wikipedia.se)

Används till: Färdig visuell modell av verkligheten, visar hur man tänker sig det ser ut. (Kommer att se ut.)

En teknisk ritning är ett tekniskt dokument som används för att helt och hållet ange krav för produkter som ska tillverkas eller bearbetas. (Wikipedia.se)
Visar hur det ska konstrueras.

Teknisk ritning – olika typer av linjer

Konturlinje, Hel linje
Visar en form vi kan se
Framsida
Ljushållare