สารบัญ:

อ่านอีเมลด้วย Arduino และ Wave Shield: 4 ขั้นตอน
อ่านอีเมลด้วย Arduino และ Wave Shield: 4 ขั้นตอน

วีดีโอ: อ่านอีเมลด้วย Arduino และ Wave Shield: 4 ขั้นตอน

วีดีโอ: อ่านอีเมลด้วย Arduino และ Wave Shield: 4 ขั้นตอน
วีดีโอ: #75 Send EMAIL from your Arduino! Better HTML! Time Server! More! 2024, กรกฎาคม
Anonim
อ่านอีเมลด้วย Arduino และ Wave Shield
อ่านอีเมลด้วย Arduino และ Wave Shield

เป็นส่วนหนึ่งของโครงการของฉันที่นี่ https://www.instructables.com/id/Sound-Switcher/ (โครงการนั้นอยู่ในการแข่งขันดังนั้นหากคุณชอบสิ่งนี้ก็ลงคะแนนให้!) ที่ใช้ Arduino เพื่อขัดจังหวะแหล่งกำเนิดเสียงภายนอก (เช่น iPod) เพื่อแจ้งให้คุณทราบเกี่ยวกับสิ่งที่เกิดขึ้นรอบตัวคุณ ฉันได้รบกวนอีเมลและอ่านว่าใครคืออีเมลจากใครและหัวเรื่อง (เพื่อให้คุณรู้ว่าคุณต้องการหยุดสิ่งที่คุณทำหรือไม่ และตรวจสอบ) เนื่องจากมี Arduino ที่มี Wave Shield อ่านอีเมลของคุณอาจเป็นประโยชน์กับผู้อื่น ฉันจึงแยกมันเป็นคำสั่งของตัวเองที่นี่ นี้ใช้ซีเรียลในการถ่ายโอนข้อมูล ฉันแค่ใช้อินเทอร์เฟซ USB บน Arduino แต่คุณควรจะสามารถทำสิ่งเดียวกันให้สำเร็จแบบไร้สายด้วย XBees จากสิ่งที่ฉันเข้าใจ ดังนั้นโดยพื้นฐานแล้วเนื้อหาใน will1 ที่สอนได้นี้ ตรวจสอบอีเมลของคุณ2. หากมีอะไรใหม่ มันจะแปลงเป็นไฟล์ wav3 จากนั้นมันจะส่งไปยัง Arduino ผ่าน serial4 จากนั้น Arduino จะเล่นมัน สิ่งที่ต้องทำที่ใหญ่ที่สุดคือการเร่งการถ่ายโอนไฟล์ ความคิดของฉันคือให้คอมพิวเตอร์ส่งมากกว่า 100 ไบต์ จากนั้นรอการตอบรับจาก Arduino ก่อนที่จะส่งเพิ่มเติม นอกจากนี้ยังควรตรวจสอบข้อผิดพลาดด้วยเนื่องจากไฟล์ไบนารีบางส่วนไม่ได้ดีไปกว่าไม่มีเลยในบางกรณี

ขั้นตอนที่ 1: ข้อความบรรทัดคำสั่งเป็นคำพูดยูทิลิตี้

นี่เป็นเครื่องมือเล็กๆ ที่ฉันเขียนอย่างรวดเร็วเพื่อแปลงข้อความเป็นคำพูดอย่างรวดเร็ว มันเขียนด้วย C# ด้วย Visual C# 2008 Express Edition ฟรี คุณอาจต้องใช้. Net 3.5 เพื่อเรียกใช้สิ่งนี้ รวมโค้ดไว้แล้ว แต่ถ้าคุณต้องการ exe เพียงอย่างเดียว คุณสามารถหาได้ใน CommandLineText2Speech/CommandLineText2Speech/bin/Release ในไฟล์ zip เพื่อให้เครื่องมือทำงานได้ คุณเพียงแค่เปิดพรอมต์คำสั่ง ไปที่ไดเร็กทอรีที่คุณใส่ exe แล้วพิมพ์ CommandLineText2Speech.exe มันจะส่งออกสิ่งนี้: การใช้งาน: ในการแสดงรายการเสียงที่ติดตั้ง: CommandLineText2Speech.exe whatvoices

การแปลงข้อความเป็น wav:CommandLineText2Speech.exe [voice] [rate - default 0 (-10 to 10)] [volume - default 80 (0 to 100)] "[text to convert]" [output file]ในคำอื่น ๆ คุณอาจต้องการเรียกใช้ก่อน: CommandLineText2Speech.exe whatvoicesThis จะแสดงรายการเสียงที่คุณติดตั้งไว้ในคอมพิวเตอร์ของคุณ คุณจะต้องใช้ชื่อเสียงเพื่อเรียกใช้เครื่องมือ เสียงที่มาพร้อมกับ Windows นั้นไม่ค่อยดี AT&T มีเสียงที่ค่อนข้างดี ถัดจากการแปลงข้อความเป็นไฟล์ wav ให้ทำดังนี้CommandLineText2Speech.exe "Microsoft Sam" 0 80 "This is a test" test.wavความหมายของมันทั้งหมด:"Microsoft Sam" - เสียง นี่คือเสียงที่มาพร้อมกับ Windows คุณมี ให้ใส่เครื่องหมายคำพูดเนื่องจากมีช่องว่าง0 - Normal Speed (สามารถไปจาก -10 ถึง 10)80 - Normal Volume (สามารถไปจาก 0 ถึง 100)"This is a test" - ข้อความที่จะเปลี่ยนเป็นไฟล์ wav.wav - ไฟล์ wav จะเรียกว่าอะไร

ขั้นตอนที่ 2: Ruby Utility เพื่อตรวจสอบอีเมลและอัปโหลด Wav ไปยัง Arduino

รหัส Ruby ที่แนบมาทำการตรวจสอบต่อไปนี้เพื่อดูว่ามีอีเมลใหม่หรือไม่ และมีการถ่ายโอนไปยัง Arduino ผ่านอินเทอร์เฟซ USB กับ Serial ที่ติดตั้งใน Arduino หรือไม่ ฉันมีปัญหากับการเชื่อมต่อความเร็วสูงผ่าน Serial (น่าจะเป็นขนาดของบัฟเฟอร์) การตั้งค่าสำหรับไฟล์ทั้งหมดอยู่ที่ด้านบนของไฟล์ สิ่งนี้ใช้โปรแกรม C# ของฉันเพื่อสร้างไฟล์ wav ฉันน่าจะแปลงทั้งหมดนี้เป็นภาษาเดียว ฉันเป็นแฟนตัวยงของ Ruby แต่ดูเหมือนว่ามันจะสร้าง wav จากข้อความได้ไม่ง่ายนัก ดังนั้นฉันจึงเขียนแอป C# เล็กๆ คุณจะต้องใช้ทับทิมด้วย serial gem ฉันได้รวมไว้ด้วย หากต้องการติดตั้ง (หลังจากคุณติดตั้ง Ruby แล้ว) ให้พิมพ์ "gem install win32-serial-0.5.1-x86-mswin32-60.gem" ในพรอมต์คำสั่งของไดเร็กทอรีที่คุณดาวน์โหลด gem ไป นั่นคือทั้งหมดที่คุณต้องการเพื่อให้โปรแกรมนี้ทำงานได้

ขั้นตอนที่ 3: รหัส Arduino

ต่อไปนี้คือตัวอย่างการอ่านข้อมูลผ่านซีเรียล การคัดลอกไปยังการ์ด SD แล้วเล่นเวฟ นี่เป็นส่วนหนึ่งของคำแนะนำของฉันที่นี่ https://www.instructables.com/id/Sound-Switcher/ (สังเกตว่าอยู่ในการประกวด Arudino ถ้าคุณชอบที่จะลงคะแนนให้!) ฉันจะเพิ่มตัวอย่างอื่นในวันถัดไปหรือเพื่อที่จะถูกตัดแต่ง ดูฟังก์ชัน check_serial สำหรับเขียนลงในการ์ด SD ฉันกำลังใช้ไลบรารี WaveRP ที่นี่เพื่อทำ

ขั้นตอนที่ 4: เรียกใช้ทั้งหมด

ตกลง ตอนนี้คุณมีชิ้นส่วนทั้งหมดแล้ว เพื่อให้ทำงานได้อย่างถูกต้อง คุณต้อง 1. ติดตั้ง Wave Shield บน Arduino2 เชื่อมต่อ Arduino กับคอมพิวเตอร์ (หรือใช้ XBee) - ฉันถือว่าคุณติดตั้งเฟิร์มแวร์ไว้แล้ว3 เรียกใช้สคริปต์ Ruby checkEmail.rb4 เพลิดเพลินกับ Arduino ในการอ่านอีเมลของคุณ

แนะนำ: