SlideShare uma empresa Scribd logo
1 de 45
Baixar para ler offline
Internet
of
Dusty Things
by Daniel Bovensiepen
Building Metros
mruby core committer
<3 3D Printer
– Objective
“My kid is the youngest attendee @eurucamp 2014.
I want him to be the oldest @eurucamp 2114.”
Airpocalypse
~2
Masks
self-protection outside
Bad Air Good Air
MAGIC(TM)
Bad Air Good Air
MAGIC(TM)
airflow
1. Version
• Dual-use of dorm room fan
• HEPA filter (80RMB)
• Tape and cardboard
~7
–Dylos Serial reading
port = ARGV[0]
logfile = ARGV[1]
ser = SerialPort.new(port, 9600, 8, 1, SerialPort::NONE)
 
loop do
line = ''
loop do
char = ser.getc
# .. normalize line format ..
sleep 0.1
end
File.open(logfile, "a+") do |f|
txt = "#{DateTime.now.strftime("%Y-%m-%d--%H-%M-%S")} #{line.strip}"
f.puts txt
end
end
Dylos
Dylos
Dylos
expensive
–Cross Compile mruby configuration to ARM
http://blog.mruby.sh/201305310507.html
–SHINYEI TECHNOLOGY Co., Ltd.
“Thank you for your inquiry of Shinyei Particle Sensor.
We usually do not disclose the information you have inquired.”
expensive
–SAMYOUNG S&C Co., Ltd.
–SAMYOUNG S&C Co., Ltd.
–flank Algorithm
# .. mcu loop ..
 
if digitalRead(pin) == LOW
unless was_low?
# just changed to low; lets save the start
start_low = millis
was_low? = true
end
else
if was_low?
# Low pulse complete
 
# Calculate the duration of the low pulse
duration = millis - start_low
# Valid low pulses are only 10ms to 90ms long
low_sum += duration if duration >= 10 && duration <= 90
not_low_anymore
end
end
–flank Algorithm
# .. mcu loop ..
 
if digitalRead(pin) == LOW
unless was_low?
# just changed to low; lets save the start
start_low = millis
was_low? = true
end
else
if was_low?
# Low pulse complete
 
# Calculate the duration of the low pulse
duration = millis - start_low
# Valid low pulses are only 10ms to 90ms long
low_sum += duration if duration >= 10 && duration <= 90
not_low_anymore
end
end
Low Flank
High Flank
Dylos
DSM501a
Dylos
DSM501a
DIY Air Purifier
~17
airflow
airflow
airflow
under
pressure
Potsdam
Air
Good Air
airflow
Beijing
Air
Good Air
airflow
–PWM based on low pulse ratio
# .. mcu loop ..
 
# acquire ratio (usually between 0% to 10%)
ratio = lowpulseoccupancy_ratio(sensor_pin)
# map 0-10% to full PWM range and
# re-use this ratio as duty cycle
analogWrite(fan_pin, 255 / 100 * ratio * 10)
2. Version
• using suction for air flow
• fan speed based on air quality
Internet of Dusty Things
• contains WIFI and ETH
• stable Linux support
• 4MB Flash
• 16MB RAM
mruby ARM
MIPS4k
Cross Compile
mruby ARM
MIPS4kmruby
Cross Compile
Cross Compile
http://blog.mruby.sh/201405051415.html
Port mruby to everything
mruby OpenWRT
MIPS4k
i.e. PS3Cross Compile
Cross Compile
pack
Feature Wish List
Cloud Storage of Pollution
Remote Control
Time Scheduler
Automatic Filter Exchange Notification
History Graph of Pollution
Software Upgrade
3. Version
• remote control via wlan
• air sensing and filter check
• data graphing and collection
I see particles
Portable Counting
Sum-Up
Internet of dusty things

Mais conteúdo relacionado

Mais procurados

Highlights of Go 1.1
Highlights of Go 1.1Highlights of Go 1.1
Highlights of Go 1.1
Cloudflare
 
GoLang & GoatCore
GoLang & GoatCore GoLang & GoatCore
GoLang & GoatCore
Sebastian Pożoga
 
Практический опыт профайлинга и оптимизации производительности Ruby-приложений
Практический опыт профайлинга и оптимизации производительности Ruby-приложенийПрактический опыт профайлинга и оптимизации производительности Ruby-приложений
Практический опыт профайлинга и оптимизации производительности Ruby-приложений
Olga Lavrentieva
 
Algorithm cup 2010
Algorithm cup 2010Algorithm cup 2010
Algorithm cup 2010
Wizche
 

Mais procurados (20)

Dynomite at Erlang Factory
Dynomite at Erlang FactoryDynomite at Erlang Factory
Dynomite at Erlang Factory
 
3 rd animation
3 rd animation3 rd animation
3 rd animation
 
Introduction to ns2
Introduction to ns2Introduction to ns2
Introduction to ns2
 
Cisco vs. huawei CLI Commands
Cisco vs. huawei CLI CommandsCisco vs. huawei CLI Commands
Cisco vs. huawei CLI Commands
 
Highlights of Go 1.1
Highlights of Go 1.1Highlights of Go 1.1
Highlights of Go 1.1
 
Highlights of Go 1.1
Highlights of Go 1.1Highlights of Go 1.1
Highlights of Go 1.1
 
Sup intro
Sup introSup intro
Sup intro
 
Some Tricks in Using Terminal - KienDT
Some Tricks in Using Terminal - KienDTSome Tricks in Using Terminal - KienDT
Some Tricks in Using Terminal - KienDT
 
Tcpdump
TcpdumpTcpdump
Tcpdump
 
Inc decsourcefile
Inc decsourcefileInc decsourcefile
Inc decsourcefile
 
Drupal Maps, Clustering.
Drupal Maps, Clustering.Drupal Maps, Clustering.
Drupal Maps, Clustering.
 
Rhel2
Rhel2Rhel2
Rhel2
 
Introduction to ns2
Introduction to ns2Introduction to ns2
Introduction to ns2
 
GoLang & GoatCore
GoLang & GoatCore GoLang & GoatCore
GoLang & GoatCore
 
DNS Delegation
DNS DelegationDNS Delegation
DNS Delegation
 
Практический опыт профайлинга и оптимизации производительности Ruby-приложений
Практический опыт профайлинга и оптимизации производительности Ruby-приложенийПрактический опыт профайлинга и оптимизации производительности Ruby-приложений
Практический опыт профайлинга и оптимизации производительности Ruby-приложений
 
Performance testing of microservices in Action
Performance testing of microservices in ActionPerformance testing of microservices in Action
Performance testing of microservices in Action
 
The async/await concurrency pattern in Golang
The async/await concurrency pattern in GolangThe async/await concurrency pattern in Golang
The async/await concurrency pattern in Golang
 
Algorithm cup 2010
Algorithm cup 2010Algorithm cup 2010
Algorithm cup 2010
 
Auto
AutoAuto
Auto
 

Destaque

Why Germany can be for Europe what China is for the United States of America
Why Germany can be for Europe what China is for the United States of AmericaWhy Germany can be for Europe what China is for the United States of America
Why Germany can be for Europe what China is for the United States of America
Knut Linke
 
Online Milieu Studies
Online Milieu StudiesOnline Milieu Studies
Online Milieu Studies
Knut Linke
 
Advantages for East European countries by Internet labor
Advantages for East European countries by Internet laborAdvantages for East European countries by Internet labor
Advantages for East European countries by Internet labor
Knut Linke
 
Online Survey - Findings and Recommendations
Online Survey - Findings and RecommendationsOnline Survey - Findings and Recommendations
Online Survey - Findings and Recommendations
Knut Linke
 
The history of social networks
The history of social networksThe history of social networks
The history of social networks
Knut Linke
 
Characteristics for the behavior of german social networks users
Characteristics for the behavior of german social networks usersCharacteristics for the behavior of german social networks users
Characteristics for the behavior of german social networks users
Knut Linke
 

Destaque (20)

Why Germany can be for Europe what China is for the United States of America
Why Germany can be for Europe what China is for the United States of AmericaWhy Germany can be for Europe what China is for the United States of America
Why Germany can be for Europe what China is for the United States of America
 
Best Practices in the Production of Learning Nuggets
Best Practices in the Production of Learning NuggetsBest Practices in the Production of Learning Nuggets
Best Practices in the Production of Learning Nuggets
 
Hybrid Fitness
Hybrid FitnessHybrid Fitness
Hybrid Fitness
 
HSW aufgeMOOCt
HSW aufgeMOOCtHSW aufgeMOOCt
HSW aufgeMOOCt
 
Online Milieu Studies
Online Milieu StudiesOnline Milieu Studies
Online Milieu Studies
 
Advantages for East European countries by Internet labor
Advantages for East European countries by Internet laborAdvantages for East European countries by Internet labor
Advantages for East European countries by Internet labor
 
Online Survey - Findings and Recommendations
Online Survey - Findings and RecommendationsOnline Survey - Findings and Recommendations
Online Survey - Findings and Recommendations
 
How2Twitter
How2TwitterHow2Twitter
How2Twitter
 
The history of social networks
The history of social networksThe history of social networks
The history of social networks
 
Neudenken von Geschäftsmodellen
Neudenken von GeschäftsmodellenNeudenken von Geschäftsmodellen
Neudenken von Geschäftsmodellen
 
Luxury Portfolio International Volume 5
Luxury  Portfolio International Volume 5Luxury  Portfolio International Volume 5
Luxury Portfolio International Volume 5
 
Jean-Pol Martin, "Lernziel Partizipationsfähigkeit und Netzsensibilität" (2009)
Jean-Pol Martin, "Lernziel Partizipationsfähigkeit und Netzsensibilität" (2009)Jean-Pol Martin, "Lernziel Partizipationsfähigkeit und Netzsensibilität" (2009)
Jean-Pol Martin, "Lernziel Partizipationsfähigkeit und Netzsensibilität" (2009)
 
Cross-platform Web Apps
Cross-platform Web AppsCross-platform Web Apps
Cross-platform Web Apps
 
Characteristics for the behavior of german social networks users
Characteristics for the behavior of german social networks usersCharacteristics for the behavior of german social networks users
Characteristics for the behavior of german social networks users
 
MARKET SEGMENTATION IN SOCIAL NETWORKS THROUGH SOCIAL STRUCTURE ANALYSIS (Dep...
MARKET SEGMENTATION IN SOCIAL NETWORKS THROUGH SOCIAL STRUCTURE ANALYSIS (Dep...MARKET SEGMENTATION IN SOCIAL NETWORKS THROUGH SOCIAL STRUCTURE ANALYSIS (Dep...
MARKET SEGMENTATION IN SOCIAL NETWORKS THROUGH SOCIAL STRUCTURE ANALYSIS (Dep...
 
Corporate Media 2.0/ Nov2010
Corporate Media 2.0/ Nov2010Corporate Media 2.0/ Nov2010
Corporate Media 2.0/ Nov2010
 
Umschulung kauffrau kaufmannbürokommunikation
Umschulung kauffrau kaufmannbürokommunikationUmschulung kauffrau kaufmannbürokommunikation
Umschulung kauffrau kaufmannbürokommunikation
 
Pimp your webinar
Pimp your webinarPimp your webinar
Pimp your webinar
 
Best Practices in the Production of Learning Nuggets CC Version
Best Practices in the Production of Learning Nuggets CC VersionBest Practices in the Production of Learning Nuggets CC Version
Best Practices in the Production of Learning Nuggets CC Version
 
Presseinformation konsistente kundenkommunikation
Presseinformation konsistente kundenkommunikationPresseinformation konsistente kundenkommunikation
Presseinformation konsistente kundenkommunikation
 

Semelhante a Internet of dusty things

Unit 10 investigating and managing
Unit 10 investigating and managingUnit 10 investigating and managing
Unit 10 investigating and managing
root_fibo
 
Tuning parallelcodeonsolaris005
Tuning parallelcodeonsolaris005Tuning parallelcodeonsolaris005
Tuning parallelcodeonsolaris005
dflexer
 
Router Queue Simulation in C++ in MMNN and MM1 conditions
Router Queue Simulation in C++ in MMNN and MM1 conditionsRouter Queue Simulation in C++ in MMNN and MM1 conditions
Router Queue Simulation in C++ in MMNN and MM1 conditions
Morteza Mahdilar
 
Performance tweaks and tools for Linux (Joe Damato)
Performance tweaks and tools for Linux (Joe Damato)Performance tweaks and tools for Linux (Joe Damato)
Performance tweaks and tools for Linux (Joe Damato)
Ontico
 

Semelhante a Internet of dusty things (20)

Testing Wi-Fi with OSS Tools
Testing Wi-Fi with OSS ToolsTesting Wi-Fi with OSS Tools
Testing Wi-Fi with OSS Tools
 
Unit 10 investigating and managing
Unit 10 investigating and managingUnit 10 investigating and managing
Unit 10 investigating and managing
 
Programming python quick intro for schools
Programming python quick intro for schoolsProgramming python quick intro for schools
Programming python quick intro for schools
 
Matlab ppt
Matlab pptMatlab ppt
Matlab ppt
 
Tuning parallelcodeonsolaris005
Tuning parallelcodeonsolaris005Tuning parallelcodeonsolaris005
Tuning parallelcodeonsolaris005
 
Router Queue Simulation in C++ in MMNN and MM1 conditions
Router Queue Simulation in C++ in MMNN and MM1 conditionsRouter Queue Simulation in C++ in MMNN and MM1 conditions
Router Queue Simulation in C++ in MMNN and MM1 conditions
 
Cs757 ns2-tutorial-exercise
Cs757 ns2-tutorial-exerciseCs757 ns2-tutorial-exercise
Cs757 ns2-tutorial-exercise
 
Introduction to reactive programming & ReactiveCocoa
Introduction to reactive programming & ReactiveCocoaIntroduction to reactive programming & ReactiveCocoa
Introduction to reactive programming & ReactiveCocoa
 
Serverless Rust
Serverless RustServerless Rust
Serverless Rust
 
Intro to OpenMP
Intro to OpenMPIntro to OpenMP
Intro to OpenMP
 
Devel::NYTProf v5 at YAPC::NA 201406
Devel::NYTProf v5 at YAPC::NA 201406Devel::NYTProf v5 at YAPC::NA 201406
Devel::NYTProf v5 at YAPC::NA 201406
 
Tcpdump
TcpdumpTcpdump
Tcpdump
 
Performance tweaks and tools for Linux (Joe Damato)
Performance tweaks and tools for Linux (Joe Damato)Performance tweaks and tools for Linux (Joe Damato)
Performance tweaks and tools for Linux (Joe Damato)
 
NS2-tutorial.pdf
NS2-tutorial.pdfNS2-tutorial.pdf
NS2-tutorial.pdf
 
lec4.docx
lec4.docxlec4.docx
lec4.docx
 
Ns2 introduction 2
Ns2 introduction 2Ns2 introduction 2
Ns2 introduction 2
 
Paexec — distributes tasks over network or CPUs
Paexec — distributes tasks over network or CPUsPaexec — distributes tasks over network or CPUs
Paexec — distributes tasks over network or CPUs
 
Towards an Integration of the Actor Model in an FRP Language for Small-Scale ...
Towards an Integration of the Actor Model in an FRP Language for Small-Scale ...Towards an Integration of the Actor Model in an FRP Language for Small-Scale ...
Towards an Integration of the Actor Model in an FRP Language for Small-Scale ...
 
Debugging Ruby Systems
Debugging Ruby SystemsDebugging Ruby Systems
Debugging Ruby Systems
 
How to admin
How to adminHow to admin
How to admin
 

Último

Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
vu2urc
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
giselly40
 

Último (20)

Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 

Internet of dusty things