Სარჩევი:
- ნაბიჯი 1: მასალები და ინსტრუმენტები
- ნაბიჯი 2: შეკრება
- ნაბიჯი 3: კოდი გაეროსთვის
- ნაბიჯი 4: შემდეგი ნაბიჯები
ვიდეო: IOT123 - I2C BRICK MASTER JIG: 4 ნაბიჯი
2024 ავტორი: John Day | [email protected]. ბოლოს შეცვლილი: 2024-01-30 10:19
ASIMIMATE სენსორების და მსახიობების შემუშავებისას, მე UNO– ს ვიყენებ შემუშავების პროტოტიპებზე adhoc I2C ბრძანებების გაგზავნისთვის. I2C აგურის ერთ -ერთი უპირატესობა არის სტანდარტიზებული პინუტები. იმის ნაცვლად, რომ ყოველ ჯერზე გამოიყენოთ დაფის მავთულები (იხ. ფრიზინგები), გამოიყენება ძლიერი ტექნოლოგიური ფარი.
ნაბიჯი 1: მასალები და ინსტრუმენტები
- 4 სმ x 6 სმ Uninersal PCB (1)
- დასაკავშირებელი მავთული (6 ფუნტი)
- 4K7 რეზისტორები (2) 6
- მამაკაცის სათაური (12P, 8P)
- ქალის სათაური (9P, ან 3P, 3P)
- შედუღება და რკინა (1)
ნაბიჯი 2: შეკრება
თუ თქვენ იყენებთ 2 -დან 3P მდედრის თავებს 1 -დან 9P მდედრის სათაურის ნაცვლად, ASIMIMATE SENSOR/ACTORS მოთავსდება JIG– ზე მათი დაშლის გარეშე.
გაყვანილობით, მოაშორეთ ბოლოებამდე 10 მმ -მდე და დააფინეთ ბოლოები.
- PCB- ის ბოლოში ჩადეთ მამრობითი სათაური (1) (2) და შედგით თავზე.
- PCB– ის ზედა ნაწილში ჩასვით მდედრის სათაური (3) და შედგით ბოლოში.
- თავზე, წითელი ხრახნიანი წითელი მავთული RED1 და RED2.
- ბოლოში, ხვრელიანი მავთული RED1– დან RED3– მდე.
- ბოლოში, ხვრელიანი მავთული RED2– დან RED5– მდე და შედუღებულია.
- თავზე, ხვრელიანი მავთული RED3– დან RED4– მდე და შედუღებულია.
- თავზე, წითელი ხრახნიანი წითელი მავთული RED6 და RED7.
- ბოლოში, ხვრელიანი მავთული RED6– დან RED8– მდე.
- ბოლოში, ხვრელიანი მავთული RED7– დან RED10– მდე და შედუღებულია.
- თავზე, ხვრელიანი მავთული RED8– დან RED9– მდე და შედუღებულია.
- ზემოდან, შავი მავთულის გავლით, შავი და მავთულხლართებით შევიდა BLACK1 და BLACK2.
- ბოლოში, ხვრელიანი მავთული BLACK1– დან BLACK3– ში.
- ბოლოში, ხვრელიანი მავთული BLACK2- დან BLACK5- ში და შედუღებულია.
- თავზე, ხვრელიანი მავთული BLACK3– დან BLACK4– ში და შედუღება.
- თავზე, ლურჯი მავთულის გავლით ლურჯ მავთულში შევიდა ლურჯი და ლურჯი 2.
- ბოლოში, ხვრელიანი მავთული BLUE1– დან BLUE3– ში.
- ბოლოში, ხვრელიანი მავთულები BLUE2– დან BLUE5– ში და შედუღებულია.
- თავზე, ხვრელიანი მავთული BLUE3– დან BLUE4– ში და შედუღებულია.
- ზემოდან, მწვანე მავთულის გავლით მწვანე მავთული შევიდა მწვანე და მწვანე 2.
- ბოლოში, ხვრელიანი მავთული GREEN1– დან GREEN3– ში.
- ბოლოში, ხვრელიანი მავთული GREEN2– დან GREEN5– ში და შედგით.
- თავზე, ხვრელიანი მავთული GREEN3– დან GREEN4– მდე და შედუღებულია.
- თავზე, ხვრელით 4K7 რეზისტორი SILVER3 და SILVER4.
- ბოლოში, ხვრელიანი მავთული SILVER3– დან GREEN5– ში და შედუღებულია.
- ბოლოში, ხვრელიანი მავთული SILVER4– დან RED10– მდე და შედუღებულია.
- თავზე, ხვრელით 4K7 რეზისტორი SILVER1 და SILVER2.
- ბოლოში, ხვრელიანი მავთული SILVER1– დან BLUE5– ში და შედუღებულია.
- ბოლოში, ხვრელიანი მავთული SILVER2– დან RED10– მდე და შედუღებულია.
ნაბიჯი 3: კოდი გაეროსთვის
ესკიზი აქ რუდიმენტულია. ეს გაძლევთ საშუალებას გამოიყენოთ კონსოლის შეყვანა, რათა გაერომ გაგზავნოს I2C შეტყობინებები I2C ATTINY85 აგურზე.
ყველა ინსტრუქცია იბეჭდება ეკრანზე, მხარდაჭერილი ვარიანტებით.
I2C BRICK adhoc ბრძანებებს მონებისათვის გაეროს ოსტატისგან
#ჩართეთ |
კონსტ ბაიტი _num_chars = 32; |
char _ მიიღო_ჩარსი [_ რიცხვითი_ჩარხები]; // მასივი მიღებული მონაცემების შესანახად |
ლოგიკური _has_new_data = ყალბი; |
voidsetup () { |
სერიული.დაწყება (9600); |
Serial.println (); |
Serial.println ("ASIMIMILATE IOT ACTOR/SENSOR EEPROM EDITOR"); |
Serial.println ("კონსოლის ფანჯარაში არჩეული ახალი ხაზის უზრუნველყოფა"); |
Serial.println (); |
Serial.println ("ADDRESS 1 CONFIRM METADATA RECEIPT N/A (FOR M2M)"); |
Serial.println ("მისამართი 2 მსახიობის ბრძანება"); |
Serial.println (); |
Serial.println ("მისამართები ავტობუსზე:"); |
scan_i2c_addresses (); |
Serial.println (); |
Serial.println (""); |
} |
voidscan_i2c_addresses () { |
int device_count = 0; |
for (ბაიტის მისამართი = 8; მისამართი <127; მისამართი ++) |
{ |
Wire.begin გადაცემა (მისამართი); |
const byte შეცდომა = Wire.endTransmission (); |
თუ (შეცდომა == 0) |
{ |
Serial.println (მისამართი); |
} |
} |
} |
voidloop () { |
recv_w_end_marker (); |
send_to_i2c (); |
} |
voidrecv_w_ მარკერი () { |
სტატიკური ბაიტი ndx = 0; |
char end_marker = '\ n'; |
char rc; |
ხოლო (Serial.available ()> 0 && _has_new_data == ყალბი) { |
rc = Serial.read (); |
თუ (rc! = end_marker) { |
_მიღებულია_ჩარსი [ndx] = rc; |
ndx ++; |
თუ (ndx> = _num_chars) { |
ndx = _num_chars - 1; |
} |
} |
სხვა { |
_received_chars [ndx] = '\ 0'; // სტრიქონის შეწყვეტა |
ndx = 0; |
_has_new_data = ჭეშმარიტი; |
} |
} |
} |
voidsend_to_i2c () { |
char param_buf [16]; |
const სიმებიანი მიღებული_სტრიქონი = სიმებიანი (_მიღებული_ჩარხები); |
თუ (_has_new_data == ჭეშმარიტი) { |
int idx1 = მიღებული_სტრიქონი.ინდექსი Of (''); |
სიმებიანი მისამართი = მიღებული_სტრიქო. ქვესტრიქონი (0, idx1); |
int address_int = address.toInt (); |
if (address_int <8 || address_int> 127) { |
Serial.println ("INVALID ADDRESS INPUT:"); |
Serial.println (მისამართი); |
დაბრუნების; |
} |
int idx2 = მიღებული_სტრიქონი.ინდექსი Of ('', idx1+1); |
სიმებიანი კოდი; |
თუ (idx2 == -1) { |
კოდი = მიღებული_სტრიქონი. ქვესტრიქონი (idx1+1); |
} სხვა { |
კოდი = მიღებული_სტრიქონი. ქვესტრიქონი (idx1+1, idx2+1); |
} |
int code_int = code.toInt (); |
if (code_int <0 || code_int> 5) { |
Serial.println ("INVALID CODE INPUT:"); |
Serial.println (კოდი); |
დაბრუნების; |
} |
bool has_parameter = idx2> -1; |
სიმებიანი პარამეტრი; |
თუ (აქვს_პარამეტრი) { |
პარამეტრი = მიღებული_სტრიქონი. ქვესტრიქონი (idx2 + 1, idx2 + 17); // მაქსიმუმ 16 სიმბოლო |
if (parameter.length () <1) { |
Serial.println ("PARTAMETER MIN. LENGTH 1"); |
_has_new_data = ყალბი; |
დაბრუნების; |
} |
} სხვა { |
if (code_int> 1) { |
Serial.println ("საჭირო პარამეტრი!"); |
_has_new_data = ყალბი; |
დაბრუნების; |
} |
} |
Serial.println (); |
Serial.print ("input orig ="); |
Serial.println (მიღებული_სტრიქონი); |
Serial.print ("მისამართი ="); |
Serial.println (მისამართი); |
Serial.print ("კოდი ="); |
Serial.println (კოდი); |
Serial.print ("პარამეტრი ="); |
Serial.println (პარამეტრი); |
// გააგზავნე VIA I2C |
Wire.beginTransmission (address_int); |
Wire.write (code_int); |
თუ (აქვს_პარამეტრი) { |
პარამეტრი.ტრიმი (); |
strcpy (param_buf, parameter.c_str ()); |
Wire.write (param_buf); |
} |
Wire.endTransmission (); |
Serial.println (); |
Serial.println ("SENT VIA I2C!"); |
Serial.println (); |
Serial.println (""); |
_has_new_data = ყალბი; |
} |
} |
rawuno_i2c_command_input.ino- ს ნახვა GitHub– ის მიერ hosted ერთად განთავსებული
ნაბიჯი 4: შემდეგი ნაბიჯები
წარმოდგენილი ნაგებობებისგან, არის საკმარისი მოძრავი ნაწილები, რომ ააწყოთ თქვენი საკუთარი ASSIMILATE IOT NETWORK.
კვანძების თითოეული ფუნქცია (სენსორები და მსახიობები) კონტროლირებადია დეცენტრალიზებული გზით, რაც არ არის დამოკიდებული MCU სამაგისტროზე, რომ ჰქონდეს რაიმე ცოდნა მხარდაჭერილი მახასიათებლების შესახებ.
MQTT ბროკერთან დაკავშირებულ ნებისმიერ აპლიკაციას შეუძლია გააკონტროლოს/დააკვირდეს IOT კვანძის ყველა მახასიათებელს. ეს არის M2M, ვებ პროგრამები, IFTTT და ასე შემდეგ. გაცილებით მარტივი (ან უფრო მდიდარი თუ გნებავთ) ინტერფეისები თქვენს IOT სამყაროში.
გირჩევთ:
DRONE MASTER: 6 ნაბიჯი
DRONE MASTER: ეს არის ხელოვნური ინტელექტის რობოტის 3D დიზაინი. ყველა დრონის კოორდინაცია და კონტროლი პროგრამაში ან დიდ ფუნქციებში ან თუნდაც ფეხბურთის მატჩში საკმაოდ რთულია. ჩვენ გვჭირდება უფრო ტრენერი თვითმფრინავების ოპერატორები. მაგრამ ეს AI რობოტი არის ფუტურისტული და იქნება
დააწკაპუნეთ Brick Switch for Makey Makey: 4 ნაბიჯი (სურათებით)
დააწკაპუნეთ Brick Switch for Makey Makey: ეს 3D დაბეჭდილი გადამრთველი მომხმარებელს საშუალებას მისცემს Makey Makey- ს გადააქციოს " თითის სლაიდი " " დააწკაპუნეთ " თამაშებში ან შეიძლება იყოს მარჯვენა/მარცხენა ისრები პრეზენტაციებზე გადახვევისთვის. მარჯვენა და მარცხენა ტერმინალის საყრდენების დამატება
Arduino Brick Color Sorter პროექტი: 5 ნაბიჯი
Arduino Brick Color Sorter Project: ამ Arduino სახელმძღვანელოში ჩვენ ვისწავლით თუ როგორ ამოვიცნოთ ჩემი სათამაშო აგურის ფერები არდუინოს და TCS3200 ფერის სენსორის გამოყენებით. თქვენ შეგიძლიათ წაიკითხოთ ქვემოთ დაწერილი სახელმძღვანელო უფრო დეტალურად. მასალები: Arduino Leonardo x 1TCS3200 x 1 უამრავი მუყაო 180 სერვო
IOT123 - ATTINY85 ONBOARD PROGRAMING JIG: 3 ნაბიჯი
IOT123 - ATTINY85 ONBOARD PROGRAMING JIG: აგურის დიზაინზე, მე აღვნიშნე, რომ ATTINY85– ის მიმდებარე ხვრელები გამოუყენებელი დარჩა, რათა ხელი შევუწყო pogo pin პროგრამისტს, ხოლო DIP8 მიერთებულია PCB– ზე. ეს არის ის pogo pin პროგრამისტი. ეს ნამდვილად არის მხოლოდ გადამყვანი ადაპტერიდან
IOT123 - ATTINY85 SOFTWARE SERIAL JIG ასამბლეა: 4 ნაბიჯი
IOT123 - ATTINY85 SOFTWARE SERIAL JIG ასამბლეა: მე ვიყენებ ATTINY85– ს დაბალი სიმძლავრის სენსორების დასაყენებლად. თავდაპირველად მეგონა, რომ არ არსებობდა ამ ჩიპების გამართვის საშუალება კონსოლის გამოყენებით და ვიყენებდი საკმაოდ ლამაზ " იქ " მეთოდები იმის დასადგენად, თუ რა ხდება გაშვების დროს. შემდეგ მე წავაწყდი პროგრამულ სერიას